Check-in [4e2d4e9b6f]

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

Overview
Comment:Add some string tests.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:4e2d4e9b6f9749d2ab4f9410d8cda16447d679ad
User & Date: stephanie.gawroriski 2019-06-15 14:13:48
Context
2019-06-15
14:16
Instead of returning illegal nonsense values when reading from an unmapped memory location, throw an exception. check-in: 846e1b33b2 user: stephanie.gawroriski tags: trunk
14:13
Add some string tests. check-in: 4e2d4e9b6f user: stephanie.gawroriski tags: trunk
11:37
Remove debug note. check-in: d04a0b8dc9 user: stephanie.gawroriski tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to runt/klib/supervisor/cc/squirreljme/jvm/Bootstrap.java.

40
41
42
43
44
45
46






47
48
49
50
51
52
53
54
		int __rombase, int __romsize, int __confbase, int __confsize)
	{
		// Initialize the RAM links to setup dirty bits and initialize the
		// last block of memory with anything that remains. This makes it so
		// the RAM is actually useable.
		Allocator.__initRamLinks(__rambase, __ramsize);
		






		// Load boot libraries that are available
		BootLibrary[] bootlibs = BootLibrary.bootLibraries(__rombase);
		
		Assembly.breakpoint();
		throw new todo.TODO();
	}
}








>
>
>
>
>
>








40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
		int __rombase, int __romsize, int __confbase, int __confsize)
	{
		// Initialize the RAM links to setup dirty bits and initialize the
		// last block of memory with anything that remains. This makes it so
		// the RAM is actually useable.
		Allocator.__initRamLinks(__rambase, __ramsize);
		
		String qx = "Hello?";
		String qy = "Love you!";
		String qz = "Is this working?";
		todo.DEBUG.note("%s %s %s", qx, qy, qz);
		Assembly.breakpoint();
		
		// Load boot libraries that are available
		BootLibrary[] bootlibs = BootLibrary.bootLibraries(__rombase);
		
		Assembly.breakpoint();
		throw new todo.TODO();
	}
}

Changes to runt/klib/supervisor/cc/squirreljme/jvm/JVMFunction.java.

280
281
282
283
284
285
286
287

288
289
290
291
292
293
294
	 *
	 * @param __p The pointer to load the string bytes from.
	 * @return The resulting and interned string.
	 * @since 2019/05/26
	 */
	public static final String jvmLoadString(int __p)
	{
		return JVMFunction.jvmLoadStringNoIntern(__p).intern();

	}
	
	/**
	 * Loads a string from memory and returns it.
	 *
	 * @param __p The pointer to load the string bytes from.
	 * @return The loaded string.







|
>







280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
	 *
	 * @param __p The pointer to load the string bytes from.
	 * @return The resulting and interned string.
	 * @since 2019/05/26
	 */
	public static final String jvmLoadString(int __p)
	{
		String rv = JVMFunction.jvmLoadStringNoIntern(__p);
		return rv.intern();
	}
	
	/**
	 * Loads a string from memory and returns it.
	 *
	 * @param __p The pointer to load the string bytes from.
	 * @return The loaded string.