ARM: fix java.lang.Math.log10
Andrew Haley
aph at redhat.com
Tue Jan 17 07:33:51 PST 2012
On 01/17/2012 02:53 PM, Andrew Haley wrote:
>> (oddity no 2)
>> > When installing vm_fatal_error as entry to handle the "java.dyn.MethodHandles::invoke" causes a signal 11
>> > I would have expected it to call report_should_not_reach_here and exit cleanly.
>> >
>> > # A fatal error has been detected by the Java Runtime Environment:
>> > #
>> > # Internal Error (os_linux_zero.cpp:270), pid=11232, tid=1090544752
>> > # fatal error: caught unhandled signal 11
> I'll fix that if you can provide a test case.
>
Fixed thusly.
Andrew.
2012-01-17 Andrew Haley <aph at redhat.com>
* openjdk/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S
(vm_fatal_error): Add an extra entry point at vm_fatal_error +
CODE_ALIGN_SIZE to allow vm_fatal_error to be used as an entry
point in asm_method_table.
diff -r f57f03c70b52 arm_port/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S
--- a/arm_port/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S Mon Jan 16 13:28:17 2012 -0500
+++ b/arm_port/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S Tue Jan 17 10:32:52 2012 -0500
@@ -789,7 +789,9 @@
1:
bx lr
-// This table must be kept in sync with AbstractInterpreter::MethodKind
+// This table must be kept in sync with
+// AbstractInterpreter::MethodKind. Note that every entry must have a
+// corresponding fast entry point at addr + CODE_ALIGN_SIZE.
asm_method_table:
2:
.word normal_entry // method needs locals initialization
@@ -2519,6 +2521,7 @@
CACHE_CP
DISPATCH 1
+ ALIGN_CODE
vm_fatal_error:
adr r0, .fatal_filename
mov r1, #99
@@ -2526,6 +2529,13 @@
b breakpoint
.fatal_filename:
.ascii "[Optimsed Assembler Interpreter Loop]\000"
+
+// This extra entry point for vm_fatal_error (at vm_fatal_error +
+// CODE_ALIGN_SIZE) allows vm_fatal_error to be used as an entry point
+// in the asm_method_table.
+ ALIGN_CODE
+ b vm_fatal_error
+
ALIGN_WORD
Opcode aastore
More information about the distro-pkg-dev
mailing list