Prepared by: | never on Mon Jun 20 17:39:20 PDT 2011 |
---|---|
Workspace: | /net/smite.us.oracle.com/export/ws/baseline |
Compare against: | ssh://hg.openjdk.java.net/hsx/hotspot-comp-gate/hotspot |
Summary of changes: | 55 lines changed: 20 ins; 30 del; 5 mod; 24757 unchg |
Patch of changes: | 7056380.patch |
Author comments: |
7056380: VM crashes with SIGSEGV in compiled code Summary: code was using andq reg, imm instead of addq addr, imm Reviewed-by: In the changes for 6961690 a copy of cmpfp_fixup was moved inline but was translated incorrectly so that it was and'ing rsp instead of (rsp). This would cause garbage to be popped into the flags and corrupt rsp. Depending on the OS and values involved you would die at the next of use the flags or later after a return. The fix is to use the right andq form. I also converted the cmpfp_fixup code into MacroAssembler so that it was obviously equivalent. Tested with failing test case and by inspection of the resulting assembly. |
Bug id: | 7056380 VM crashes with SIGSEGV in compiled code |
Legend: |
Modified file Deleted file New file |
Cdiffs
Udiffs
Sdiffs
Frames
Old
New
Patch
Raw
src/cpu/x86/vm/assembler_x86.hpp
1 line changed: 1 ins; 0 del; 0 mod; 2414 unchg
Cdiffs
Udiffs
Sdiffs
Frames
Old
New
Patch
Raw
src/cpu/x86/vm/assembler_x86.cpp
8 lines changed: 8 ins; 0 del; 0 mod; 9628 unchg
Cdiffs
Udiffs
Sdiffs
Frames
Old
New
Patch
Raw
src/cpu/x86/vm/x86_64.ad
46 lines changed: 11 ins; 30 del; 5 mod; 12715 unchg
This code review page was prepared using /never/bin/webrev (vers 23.18-hg-never).