Check-in [3382ce9d92]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Correct load of string constant entries (use UsedString); Add get of this name for a class.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 3382ce9d922312ebf507755f71139ceb09841800
User & Date: stephanie.gawroriski 2019-09-11 22:59:18
Context
2019-09-12
00:16
Remove some debug code. check-in: a41cf59111 user: stephanie.gawroriski tags: trunk
2019-09-11
22:59
Correct load of string constant entries (use UsedString); Add get of this name for a class. check-in: 3382ce9d92 user: stephanie.gawroriski tags: trunk
15:19
Add by index in DCRP. check-in: 46de5da585 user: stephanie.gawroriski tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to runt/libs/tool-classfile/dev/shadowtail/classfile/mini/MinimizedClassFile.java.

289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
	 * Returns the name of the current class.
	 *
	 * @return The name of the current class.
	 * @since 2019/04/17
	 */
	public final ClassName thisName()
	{
		throw new todo.TODO();
		/*
		return this.pool.<ClassName>get(
			this.header.classname, ClassName.class);
		*/
	}
	
	/**
	 * Decodes and returns the minimized representation of the class file.
	 *
	 * @param __is The stream to decode from.
	 * @return The resulting minimized class.







<
<
|
|
<







289
290
291
292
293
294
295


296
297

298
299
300
301
302
303
304
	 * Returns the name of the current class.
	 *
	 * @return The name of the current class.
	 * @since 2019/04/17
	 */
	public final ClassName thisName()
	{


		return this.pool.getByIndex(false, this.header.classname).
			<ClassName>value(ClassName.class);

	}
	
	/**
	 * Decodes and returns the minimized representation of the class file.
	 *
	 * @param __is The stream to decode from.
	 * @return The resulting minimized class.

Changes to runt/libs/tool-classfile/dev/shadowtail/classfile/nncc/NearNativeByteCodeHandler.java.

1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
		{
			// Need volatiles
			VolatileRegisterStack volatiles = this.volatiles;
			
			// Load the string pointer into a temporary
			int volstrptr = volatiles.get();
			codebuilder.add(NativeInstructionType.LOAD_POOL,
				__v, volstrptr);
			
			// Call internal string loader
			this.__invokeStatic(InvokeType.STATIC, JVMFUNC_CLASS,
				"jvmLoadString", "(I)Ljava/lang/String;", volstrptr);
			
			// Cleanup
			volatiles.remove(volstrptr);







|







1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
		{
			// Need volatiles
			VolatileRegisterStack volatiles = this.volatiles;
			
			// Load the string pointer into a temporary
			int volstrptr = volatiles.get();
			codebuilder.add(NativeInstructionType.LOAD_POOL,
				new UsedString((String)__v), volstrptr);
			
			// Call internal string loader
			this.__invokeStatic(InvokeType.STATIC, JVMFUNC_CLASS,
				"jvmLoadString", "(I)Ljava/lang/String;", volstrptr);
			
			// Cleanup
			volatiles.remove(volstrptr);