Home | History | Annotate | Download | only in AArch64
      1 // RUN: not llvm-mc -triple aarch64--none-eabi -filetype obj < %s -o /dev/null 2>&1 | FileCheck %s
      2 
      3 // Note: These errors are not always emitted in the order in which the relevant
      4 // source appears, this file is carefully ordered so that that is the case.
      5 
      6   .text
      7 // CHECK: :[[@LINE+1]]:{{[0-9]+}}: error: symbol 'undef' can not be undefined in a subtraction expression
      8   .word (0-undef)
      9 
     10 // CHECK: :[[@LINE+1]]:{{[0-9]+}}: error: expected relocatable expression
     11   .word -undef
     12 
     13 // CHECK: :[[@LINE+1]]:{{[0-9]+}}: error: No relocation available to represent this relative expression
     14   adr x0, #a-undef
     15 
     16 // CHECK: :[[@LINE+1]]:{{[0-9]+}}: error: Cannot represent a difference across sections
     17   .word x_a - y_a
     18 
     19 // CHECK: :[[@LINE+1]]:{{[0-9]+}}: error: 1-byte data relocations not supported
     20   .byte undef
     21 
     22 // CHECK: :[[@LINE+1]]:{{[0-9]+}}: error: 1-byte data relocations not supported
     23   .byte undef-.
     24 
     25 // CHECK: :[[@LINE+1]]:{{[0-9]+}}: error: Unsupported pc-relative fixup kind
     26   ldr x0, [x1, :lo12:undef-.]
     27 
     28 // CHECK: :[[@LINE+1]]:{{[0-9]+}}: error: invalid fixup for 8-bit load/store instruction
     29   ldrb w0, [x1, :gottprel_lo12:undef]
     30 
     31 // CHECK: :[[@LINE+1]]:{{[0-9]+}}: error: invalid fixup for 16-bit load/store instruction
     32   ldrh w0, [x1, :gottprel_lo12:undef]
     33 
     34 // CHECK: :[[@LINE+1]]:{{[0-9]+}}: error: LP64 32-bit load/store relocation not supported (ILP32 eqv: TLSIE_LD32_GOTTPREL_LO12_NC)
     35   ldr w0, [x1, :gottprel_lo12:undef]
     36 
     37 
     38 
     39 w:
     40   .word 0
     41   .weak w
     42 
     43 
     44   .section sec_x
     45 x_a:
     46   .word 0
     47 
     48 
     49   .section sec_y
     50 y_a:
     51   .word 0
     52