* src/vm/jit/patcher-common.h: Added __X86_64__ ifdef.
authorChristian Thalinger <twisti@complang.tuwien.ac.at>
Fri, 7 Sep 2007 23:50:30 +0000 (01:50 +0200)
committerChristian Thalinger <twisti@complang.tuwien.ac.at>
Fri, 7 Sep 2007 23:50:30 +0000 (01:50 +0200)
commitb25dd32301a6fc583191a95b508741ef49271442
tree005c2f5a475814a798618a1cf0682357e2872885
parent68b66c1861f773d9725b5dba41769533e89130ff
* src/vm/jit/patcher-common.h: Added __X86_64__ ifdef.
* src/vm/signal.c (signal_init): Likewise.
* src/vm/signallocal.h: Likewise.

* src/vm/jit/x86_64/asmpart.S (asm_patcher_wrapper): Removed.

* src/vm/jit/x86_64/codegen.c (vm/jit/patcher.h): Removed.
(vm/jit/patcher-common.h): Added.
(codegen_emit): Implemented patchers-by-signal and load data from data
segment instead of moving inline.
(codegen_emit_stub_native): Likewise.
(codegen_emit_stub_compiler): Quick hack for ALD.

* src/vm/jit/x86_64/codegen.h (PATCHER_CALL_SIZE): Changed to 2.
(PATCHER_NOPS): Likewise.
(M_ALD): Handle RIP properly.

* src/vm/jit/x86_64/emit.c (vm/jit/patcher-common.h): Added.
(emit_patcher_stubs): Removed.
(emit_trap): Emit UD2.

* src/vm/jit/x86_64/linux/md-os.c (md_signal_handler_sigill): New
function.

* src/vm/jit/x86_64/patcher.c (vm/jit/patcher.h): Removed.
(vm/jit/patcher-common.h): Added.
(patcher_wrapper): Removed.
(PATCH_BACK_ORIGINAL_MCODE): New macro.
(patcher_patch_code): New function.
(patcher_resolve_classref_to_classinfo): Likewise.
(patcher_resolve_classref_to_vftbl): Likewise.
(patcher_resolve_classref_to_flags): Likewise.
(patcher_resolve_native_function): Likewise.
(patcher_aconst): Removed.
(patcher_builtin_multianewarray): Likewise.
(patcher_builtin_arraycheckcast): Likewise.
(patcher_checkcast_instanceof_flags): Likewise.
(patcher_checkcast_class): Likewise.
(patcher_instanceof_class): Likewise.
(patcher_clinit): Likewise.
(patcher_athrow_areturn): Likewise.
(patcher_resolve_native): Likewise.

--HG--
branch : michi
extra : transplant_source : %0D%8A%CD%DB3%D23d%B5%3AV%10%E4%87%E5d%C4%D94b
src/vm/jit/patcher-common.h
src/vm/jit/x86_64/asmpart.S
src/vm/jit/x86_64/codegen.c
src/vm/jit/x86_64/codegen.h
src/vm/jit/x86_64/emit.c
src/vm/jit/x86_64/linux/md-os.c
src/vm/jit/x86_64/patcher.c
src/vm/signal.c
src/vm/signallocal.h