mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-30 02:32:08 +00:00
db9835d089
This moves most of the isUsed logic to the MCSymbol itself. With this we get a bit more relaxed about allowing definitions after uses: uses that don't evaluate their argument immediately (jmp foo) are accepted. ddunbar, this was the smallest compromise I could think of that lets us accept gcc (and clang!) assembly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119144 91177308-0d34-0410-b5e6-96231b3b80d8
22 lines
646 B
ArmAsm
22 lines
646 B
ArmAsm
// RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | elf-dump --dump-section-data | FileCheck %s
|
|
|
|
// Test that we accept .set of a symbol after it has been used in a statement.
|
|
|
|
jmp foo
|
|
.set foo, bar
|
|
|
|
// or a .quad
|
|
|
|
.quad foo2
|
|
.set foo2,bar2
|
|
|
|
// Test that there is an undefined reference to bar
|
|
// CHECK: (('st_name', 0x00000001) # 'bar'
|
|
// CHECK-NEXT: ('st_bind', 0x00000001)
|
|
// CHECK-NEXT: ('st_type', 0x00000000)
|
|
// CHECK-NEXT: ('st_other', 0x00000000)
|
|
// CHECK-NEXT: ('st_shndx', 0x00000000)
|
|
// CHECK-NEXT: ('st_value', 0x00000000)
|
|
// CHECK-NEXT: ('st_size', 0x00000000)
|
|
// CHECK-NEXT: ),
|