1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-01-31 12:41:49 +01:00

[MCJIT] Make sure we test ARM BR24 relocations with both internal and external

symbols.

Previously we have only been testing these relocations with external symbols.

<rdar://problem/18308413>

llvm-svn: 217635
This commit is contained in:
Lang Hames 2014-09-11 22:43:36 +00:00
parent 3a28731f9f
commit 5eb80e92d1

View File

@ -17,8 +17,8 @@ insn2:
nextPC: nextPC:
add r1, r0, r0 add r1, r0, r0
# Check stub generation by referencing a common symbol, 'baz'. Check both the # Check stub generation for external symbols by referencing a common symbol, 'baz'.
# Content of the stub, and the reference to the stub. # Check both the content of the stub, and the reference to the stub.
# Stub should contain '0xe51ff004' (ldr pc, [pc, #-4]), followed by the target. # Stub should contain '0xe51ff004' (ldr pc, [pc, #-4]), followed by the target.
# #
# rtdyld-check: *{4}(stub_addr(foo.o, __text, baz)) = 0xe51ff004 # rtdyld-check: *{4}(stub_addr(foo.o, __text, baz)) = 0xe51ff004
@ -27,6 +27,11 @@ nextPC:
# rtdyld-check: decode_operand(insn3, 0) = stub_addr(foo.o, __text, baz) - (insn3 + 8) # rtdyld-check: decode_operand(insn3, 0) = stub_addr(foo.o, __text, baz) - (insn3 + 8)
insn3: insn3:
bl baz bl baz
# Check stub generation for internal symbols by referencing 'bar'.
# rtdyld-check: *{4}(stub_addr(foo.o, __text, bar) + 4) = bar
insn4:
bl bar
bx lr bx lr
# Add 'aaa' to the common symbols to make sure 'baz' isn't at the start of the # Add 'aaa' to the common symbols to make sure 'baz' isn't at the start of the