brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.0 KiB · d68006e Raw
67 lines · plain
1// RUN: llvm-mc -triple=arm64-linux-gnu -show-encoding -o - %s | FileCheck %s2// RUN: llvm-mc -triple=arm64-linux-gnu -show-encoding -filetype=obj -o - %s | llvm-objdump -r - | FileCheck --check-prefix=CHECK-OBJ %s3 4        movz x2, #:abs_g0:sym5        movk w3, #:abs_g0_nc:sym6        movz x2, #:prel_g0:sym7        movk w3, #:prel_g0_nc:sym8// CHECK: movz    x2, #:abs_g0:sym        // encoding: [0bAAA00010,A,0b100AAAAA,0xd2]9// CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g0:sym, kind: fixup_aarch64_movw10// CHECK: movk     w3, #:abs_g0_nc:sym    // encoding: [0bAAA00011,A,0b100AAAAA,0x72]11// CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g0_nc:sym, kind: fixup_aarch64_movw12// CHECK: movz    x2, #:prel_g0:sym       // encoding: [0bAAA00010,A,0b100AAAAA,0xd2]13// CHECK-NEXT:                            //   fixup A - offset: 0, value: :prel_g0:sym, kind: fixup_aarch64_movw14// CHECK: movk     w3, #:prel_g0_nc:sym   // encoding: [0bAAA00011,A,0b100AAAAA,0x72]15// CHECK-NEXT:                            //   fixup A - offset: 0, value: :prel_g0_nc:sym, kind: fixup_aarch64_movw16 17// CHECK-OBJ: 0 R_AARCH64_MOVW_UABS_G0 sym18// CHECK-OBJ: 4 R_AARCH64_MOVW_UABS_G0_NC sym19// CHECK-OBJ: 8 R_AARCH64_MOVW_PREL_G0 sym20// CHECK-OBJ: c R_AARCH64_MOVW_PREL_G0_NC sym21 22        movz x4, #:abs_g1:sym23        movk w5, #:abs_g1_nc:sym24        movz x4, #:prel_g1:sym25        movk w5, #:prel_g1_nc:sym26// CHECK: movz     x4, #:abs_g1:sym       // encoding: [0bAAA00100,A,0b101AAAAA,0xd2]27// CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g1:sym, kind: fixup_aarch64_movw28// CHECK: movk     w5, #:abs_g1_nc:sym    // encoding: [0bAAA00101,A,0b101AAAAA,0x72]29// CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g1_nc:sym, kind: fixup_aarch64_movw30// CHECK: movz     x4, #:prel_g1:sym      // encoding: [0bAAA00100,A,0b101AAAAA,0xd2]31// CHECK-NEXT:                            //   fixup A - offset: 0, value: :prel_g1:sym, kind: fixup_aarch64_movw32// CHECK: movk     w5, #:prel_g1_nc:sym   // encoding: [0bAAA00101,A,0b101AAAAA,0x72]33// CHECK-NEXT:                            //   fixup A - offset: 0, value: :prel_g1_nc:sym, kind: fixup_aarch64_movw34 35// CHECK-OBJ: 10 R_AARCH64_MOVW_UABS_G1 sym36// CHECK-OBJ: 14 R_AARCH64_MOVW_UABS_G1_NC sym37// CHECK-OBJ: 18 R_AARCH64_MOVW_PREL_G1 sym38// CHECK-OBJ: 1c R_AARCH64_MOVW_PREL_G1_NC sym39 40        movz x6, #:abs_g2:sym41        movk x7, #:abs_g2_nc:sym42        movz x6, #:prel_g2:sym43        movk x7, #:prel_g2_nc:sym44// CHECK: movz     x6, #:abs_g2:sym       // encoding: [0bAAA00110,A,0b110AAAAA,0xd2]45// CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g2:sym, kind: fixup_aarch64_movw46// CHECK: movk     x7, #:abs_g2_nc:sym    // encoding: [0bAAA00111,A,0b110AAAAA,0xf2]47// CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g2_nc:sym, kind: fixup_aarch64_movw48// CHECK: movz     x6, #:prel_g2:sym      // encoding: [0bAAA00110,A,0b110AAAAA,0xd2]49// CHECK-NEXT:                            //   fixup A - offset: 0, value: :prel_g2:sym, kind: fixup_aarch64_movw50// CHECK: movk     x7, #:prel_g2_nc:sym   // encoding: [0bAAA00111,A,0b110AAAAA,0xf2]51// CHECK-NEXT:                            //   fixup A - offset: 0, value: :prel_g2_nc:sym, kind: fixup_aarch64_movw52 53// CHECK-OBJ: 20 R_AARCH64_MOVW_UABS_G2 sym54// CHECK-OBJ: 24 R_AARCH64_MOVW_UABS_G2_NC sym55// CHECK-OBJ: 28 R_AARCH64_MOVW_PREL_G2 sym56// CHECK-OBJ: 2c R_AARCH64_MOVW_PREL_G2_NC sym57 58        movz x8, #:abs_g3:sym59        movz x8, #:prel_g3:sym60// CHECK: movz     x8, #:abs_g3:sym       // encoding: [0bAAA01000,A,0b111AAAAA,0xd2]61// CHECK-NEXT:                            //   fixup A - offset: 0, value: :abs_g3:sym, kind: fixup_aarch64_movw62// CHECK: movz     x8, #:prel_g3:sym      // encoding: [0bAAA01000,A,0b111AAAAA,0xd2]63// CHECK-NEXT:                            //   fixup A - offset: 0, value: :prel_g3:sym, kind: fixup_aarch64_movw64 65// CHECK-OBJ: 30 R_AARCH64_MOVW_UABS_G3 sym66// CHECK-OBJ: 34 R_AARCH64_MOVW_PREL_G3 sym67