Home | History | Annotate | Download | only in AArch64
      1 // RUN: llvm-mc -triple=arm64-linux-gnu -show-encoding -o - %s | FileCheck %s
      2 // RUN: llvm-mc -triple=arm64-linux-gnu -show-encoding -filetype=obj -o - %s | llvm-objdump -r - | FileCheck --check-prefix=CHECK-OBJ %s
      3 
      4         movz x2, #:abs_g0:sym
      5         movk w3, #:abs_g0_nc:sym
      6 // CHECK: movz    x2, #:abs_g0:sym        // encoding: [0bAAA00010,A,0b100AAAAA,0xd2]
      7 // CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g0:sym, kind: fixup_aarch64_movw
      8 // CHECK: movk     w3, #:abs_g0_nc:sym    // encoding: [0bAAA00011,A,0b100AAAAA,0x72]
      9 // CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g0_nc:sym, kind: fixup_aarch64_movw
     10 
     11 // CHECK-OBJ: 0 R_AARCH64_MOVW_UABS_G0 sym
     12 // CHECK-OBJ: 4 R_AARCH64_MOVW_UABS_G0_NC sym
     13 
     14         movz x4, #:abs_g1:sym
     15         movk w5, #:abs_g1_nc:sym
     16 // CHECK: movz     x4, #:abs_g1:sym       // encoding: [0bAAA00100,A,0b101AAAAA,0xd2]
     17 // CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g1:sym, kind: fixup_aarch64_movw
     18 // CHECK: movk     w5, #:abs_g1_nc:sym    // encoding: [0bAAA00101,A,0b101AAAAA,0x72]
     19 // CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g1_nc:sym, kind: fixup_aarch64_movw
     20 
     21 // CHECK-OBJ: 8 R_AARCH64_MOVW_UABS_G1 sym
     22 // CHECK-OBJ: c R_AARCH64_MOVW_UABS_G1_NC sym
     23 
     24         movz x6, #:abs_g2:sym
     25         movk x7, #:abs_g2_nc:sym
     26 // CHECK: movz     x6, #:abs_g2:sym       // encoding: [0bAAA00110,A,0b110AAAAA,0xd2]
     27 // CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g2:sym, kind: fixup_aarch64_movw
     28 // CHECK: movk     x7, #:abs_g2_nc:sym    // encoding: [0bAAA00111,A,0b110AAAAA,0xf2]
     29 // CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g2_nc:sym, kind: fixup_aarch64_movw
     30 
     31 // CHECK-OBJ: 10 R_AARCH64_MOVW_UABS_G2 sym
     32 // CHECK-OBJ: 14 R_AARCH64_MOVW_UABS_G2_NC sym
     33 
     34         movz x8, #:abs_g3:sym
     35 // CHECK: movz     x8, #:abs_g3:sym       // encoding: [0bAAA01000,A,0b111AAAAA,0xd2]
     36 // CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g3:sym, kind: fixup_aarch64_movw
     37 
     38 // CHECK-OBJ: 18 R_AARCH64_MOVW_UABS_G3 sym
     39