mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
[MCJIT] Make sure eh-frame fixups use the target's pointer type, not the host's.
If the wrong pointer type is used it can cause corruption of the frame description entries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@217124 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
30
test/ExecutionEngine/RuntimeDyld/X86/MachO_i386_eh_frame.s
Normal file
30
test/ExecutionEngine/RuntimeDyld/X86/MachO_i386_eh_frame.s
Normal file
@@ -0,0 +1,30 @@
|
||||
# RUN: llvm-mc -triple=i386-apple-macosx10.4 -relocation-model=dynamic-no-pic -filetype=obj -o %T/MachO_i386_eh_frame.o %s
|
||||
# RUN: llvm-rtdyld -triple=i386-apple-macosx10.4 -verify -map-section MachO_i386_eh_frame.o,__text=0x2000 -check=%s %/T/MachO_i386_eh_frame.o
|
||||
|
||||
# rtdyld-check: *{4}(section_addr(MachO_i386_eh_frame.o, __eh_frame) + 0x20) = (main - (section_addr(MachO_i386_eh_frame.o, __eh_frame) + 0x20))[31:0]
|
||||
# rtdyld-check: *{4}(section_addr(MachO_i386_eh_frame.o, __eh_frame) + 0x24) = 0x9
|
||||
|
||||
.section __TEXT,__text,regular,pure_instructions
|
||||
|
||||
.globl bar
|
||||
.align 4, 0x90
|
||||
bar:
|
||||
retl
|
||||
|
||||
.globl main
|
||||
.align 4, 0x90
|
||||
main:
|
||||
.cfi_startproc
|
||||
pushl %ebp
|
||||
Ltmp0:
|
||||
.cfi_def_cfa_offset 8
|
||||
Ltmp1:
|
||||
.cfi_offset %ebp, -8
|
||||
movl %esp, %ebp
|
||||
Ltmp2:
|
||||
.cfi_def_cfa_register %ebp
|
||||
popl %ebp
|
||||
jmp bar
|
||||
.cfi_endproc
|
||||
|
||||
.subsections_via_symbols
|
Reference in New Issue
Block a user