brintos

brintos / llvm-project-archived public Read only

0
0
Text · 23.4 KiB · 4a8c8f3 Raw
479 lines · plain
1 2# RUN: llvm-mc -triple s390x-unknown-unknown -mcpu=z13 --show-encoding %s | FileCheck %s3 4# RUN: llvm-mc -triple s390x-unknown-unknown -mcpu=z13 -filetype=obj %s -o %t5# RUN: llvm-readobj -r %t | FileCheck %s -check-prefix=CHECK-REL6# RUN: llvm-readelf -s - < %t | FileCheck %s --check-prefix=READELF --implicit-check-not=TLS7 8# RUN: llvm-mc -triple s390x-unknown-unknown -mcpu=z13 -filetype=obj %s | \9# RUN: llvm-objdump -d - | FileCheck %s -check-prefix=CHECK-DIS10 11# CHECK: larl %r14, target                      # encoding: [0xc0,0xe0,A,A,A,A]12# CHECK-NEXT:                                   # fixup A - offset: 2, value: target+2, kind: FK_390_PC32DBL13# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_PC32DBL target 0x214	.align 1615	larl %r14, target16 17# CHECK: larl %r14, target@GOT                  # encoding: [0xc0,0xe0,A,A,A,A]18# CHECK-NEXT:                                   # fixup A - offset: 2, value: target@GOT+2, kind: FK_390_PC32DBL19# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_GOTENT target 0x220	.align 1621	larl %r14, target@got22 23# CHECK: larl %r14, target@GOTENT               # encoding: [0xc0,0xe0,A,A,A,A]24# CHECK-NEXT:                                   # fixup A - offset: 2, value: target@GOTENT+2, kind: FK_390_PC32DBL25# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_GOTENT target 0x226	.align 1627	larl %r14, target@gotent28 29# CHECK: larl %r14, s_indntpoff@INDNTPOFF       # encoding: [0xc0,0xe0,A,A,A,A]30# CHECK-NEXT:                                   # fixup A - offset: 2, value: s_indntpoff@INDNTPOFF+2, kind: FK_390_PC32DBL31# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_TLS_IEENT s_indntpoff 0x232	.align 1633	larl %r14, s_indntpoff@indntpoff34 35# CHECK: brasl %r14, target                     # encoding: [0xc0,0xe5,A,A,A,A]36# CHECK-NEXT:                                   # fixup A - offset: 2, value: target+2, kind: FK_390_PC32DBL37# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_PC32DBL target 0x238	.align 1639	brasl %r14, target40 41# CHECK: brasl %r14, target@PLT                 # encoding: [0xc0,0xe5,A,A,A,A]42# CHECK-NEXT:                                   # fixup A - offset: 2, value: target@PLT+2, kind: FK_390_PC32DBL43# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_PLT32DBL target 0x244	.align 1645	brasl %r14, target@plt46 47# CHECK: brasl %r14, target@PLT:tls_gdcall:s_gdcall  # encoding: [0xc0,0xe5,A,A,A,A]48# CHECK-NEXT:                                   # fixup A - offset: 2, value: target@PLT+2, kind: FK_390_PC32DBL49# CHECK-NEXT:                                   # fixup B - offset: 0, value: s_gdcall@TLSGD, kind: FK_390_TLS_CALL50# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_PLT32DBL target 0x251# CHECK-REL:                                    0x{{[0-9A-F]*0}} R_390_TLS_GDCALL s_gdcall 0x052	.align 1653	brasl %r14, target@plt:tls_gdcall:s_gdcall54 55# CHECK: brasl %r14, target@PLT:tls_ldcall:s_ldcall  # encoding: [0xc0,0xe5,A,A,A,A]56# CHECK-NEXT:                                   # fixup A - offset: 2, value: target@PLT+2, kind: FK_390_PC32DBL57# CHECK-NEXT:                                   # fixup B - offset: 0, value: s_ldcall@TLSLDM, kind: FK_390_TLS_CALL58# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_PLT32DBL target 0x259# CHECK-REL:                                    0x{{[0-9A-F]*0}} R_390_TLS_LDCALL s_ldcall 0x060	.align 1661	brasl %r14, target@plt:tls_ldcall:s_ldcall62 63# CHECK: bras %r14, target                      # encoding: [0xa7,0xe5,A,A]64# CHECK-NEXT:                                   # fixup A - offset: 2, value: target+2, kind: FK_390_PC16DBL65# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_PC16DBL target 0x266	.align 1667	bras %r14, target68 69# CHECK: bras %r14, target@PLT                  # encoding: [0xa7,0xe5,A,A]70# CHECK-NEXT:                                   # fixup A - offset: 2, value: target@PLT+2, kind: FK_390_PC16DBL71# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_PLT16DBL target 0x272	.align 1673	bras %r14, target@plt74 75# CHECK: bras %r14, target@PLT:tls_gdcall:gdcall   # encoding: [0xa7,0xe5,A,A]76# CHECK-NEXT:                                   # fixup A - offset: 2, value: target@PLT+2, kind: FK_390_PC16DBL77# CHECK-NEXT:                                   # fixup B - offset: 0, value: gdcall@TLSGD, kind: FK_390_TLS_CALL78# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_PLT16DBL target 0x279# CHECK-REL:                                    0x{{[0-9A-F]*0}} R_390_TLS_GDCALL gdcall 0x080	.align 1681	bras %r14, target@plt:tls_gdcall:gdcall82 83# CHECK: bras %r14, target@PLT:tls_ldcall:ldcall   # encoding: [0xa7,0xe5,A,A]84# CHECK-NEXT:                                   # fixup A - offset: 2, value: target@PLT+2, kind: FK_390_PC16DBL85# CHECK-NEXT:                                   # fixup B - offset: 0, value: ldcall@TLSLDM, kind: FK_390_TLS_CALL86# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_PLT16DBL target 0x287# CHECK-REL:                                    0x{{[0-9A-F]*0}} R_390_TLS_LDCALL ldcall 0x088	.align 1689	bras %r14, target@plt:tls_ldcall:ldcall90 91 92# Symbolic displacements93 94## BD1295# CHECK: vl %v0, src                            # encoding: [0xe7,0x00,0b0000AAAA,A,0x00,0x06]96# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_U12Imm97# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 src 0x098        .align 1699        vl %v0, src100 101# CHECK: vl %v0, src(%r1)                       # encoding: [0xe7,0x00,0b0001AAAA,A,0x00,0x06]102# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_U12Imm103# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 src 0x0104        .align 16105        vl %v0, src(%r1)106 107# CHECK: .insn vrx,253987186016262,%v0,src(%r1),3  # encoding: [0xe7,0x00,0b0001AAAA,A,0x30,0x06]108# CHECK-NEXT:                                      # fixup A - offset: 2, value: src, kind: FK_390_U12Imm109# CHECK-REL:                                       0x{{[0-9A-F]*2}} R_390_12 src 0x0110        .align 16111        .insn vrx,0xe70000000006,%v0,src(%r1),3	   # vl112 113## BD20114# CHECK: lmg %r6, %r15, src                     # encoding: [0xeb,0x6f,0b0000AAAA,A,A,0x04]115# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_S20Imm116# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_20 src 0x0117	.align 16118        lmg %r6, %r15, src119 120# CHECK: lmg %r6, %r15, src(%r1)                # encoding: [0xeb,0x6f,0b0001AAAA,A,A,0x04]121# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_S20Imm122# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_20 src 0x0123	.align 16124        lmg %r6, %r15, src(%r1)125 126# CHECK: .insn siy,258385232527441,src(%r15),240  # encoding: [0xeb,0xf0,0b1111AAAA,A,A,0x51]127# CHECK-NEXT:                                     # fixup A - offset: 2, value: src, kind: FK_390_S20Imm128# CHECK-REL:                                      0x{{[0-9A-F]*2}} R_390_20 src 0x0129	.align 16130        .insn siy,0xeb0000000051,src(%r15),240	  # tmy131 132## BDX12133# CHECK: la %r14, src                           # encoding: [0x41,0xe0,0b0000AAAA,A]134# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_U12Imm135# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 src 0x0136        .align 16137        la %r14, src138 139# CHECK: la %r14, src(%r1)                      # encoding: [0x41,0xe0,0b0001AAAA,A]140# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_U12Imm141# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 src 0x0142        .align 16143        la %r14, src(%r1)144 145# CHECK: la %r14, src(%r1,%r2)                  # encoding: [0x41,0xe1,0b0010AAAA,A]146# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_U12Imm147# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 src 0x0148        .align 16149        la %r14, src(%r1, %r2)150 151# CHECK: .insn vrx,253987186016262,%v2,src(%r2,%r3),3  # encoding: [0xe7,0x22,0b0011AAAA,A,0x30,0x06]152# CHECK-NEXT:	                                       # fixup A - offset: 2, value: src, kind: FK_390_U12Imm153# CHECK-REL:                                           0x{{[0-9A-F]*2}} R_390_12 src 0x0154        .align 16155        .insn vrx,0xe70000000006,%v2,src(%r2, %r3),3   # vl156 157##BDX20158# CHECK: lg %r14, src                           # encoding: [0xe3,0xe0,0b0000AAAA,A,A,0x04]159# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_S20Imm160# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_20 src 0x0161	.align 16162	lg %r14, src163 164# CHECK: lg %r14, src(%r1)                      # encoding: [0xe3,0xe0,0b0001AAAA,A,A,0x04]165# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_S20Imm166# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_20 src 0x0167	.align 16168	lg %r14, src(%r1)169 170# CHECK: lg %r14, src(%r1,%r2)                  # encoding: [0xe3,0xe1,0b0010AAAA,A,A,0x04]171# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_S20Imm172# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_20 src 0x0173	.align 16174	lg %r14, src(%r1, %r2)175 176# CHECK:  .insn rxy,260584255783013,%f1,src(%r2,%r15)  # encoding: [0xed,0x12,0b1111AAAA,A,A,0x65]177# CHECK-NEXT:                                          # fixup A - offset: 2, value: src, kind: FK_390_S20Imm178# CHECK-REL:                                           0x{{[0-9A-F]*2}} R_390_20 src 0x0179	.align 16180	.insn rxy,0xed0000000065,%f1,src(%r2,%r15)     # ldy181 182##BD12L4183# CHECK: tp src(16)                             # encoding: [0xeb,0xf0,0b0000AAAA,A,0x00,0xc0]184# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_U12Imm185# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 src 0x0186	.align 16187        tp src(16)188 189# CHECK: tp src(16,%r1)                         # encoding: [0xeb,0xf0,0b0001AAAA,A,0x00,0xc0]190# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_U12Imm191# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 src 0x0192	.align 16193        tp src(16, %r1)194 195##BD12L8196#SSa197# CHECK: mvc dst(1,%r1), src(%r1)               # encoding: [0xd2,0x00,0b0001AAAA,A,0b0001BBBB,B]198# CHECK-NEXT:                                   # fixup A - offset: 2, value: dst, kind: FK_390_U12Imm199# CHECK-NEXT:                                   # fixup B - offset: 4, value: src, kind: FK_390_U12Imm200# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 dst 0x0201# CHECK-REL:                                    0x{{[0-9A-F]*4}} R_390_12 src 0x0202        .align 16203        mvc dst(1,%r1), src(%r1)204 205#SSb206# CHECK: mvo src(16,%r1), src(1,%r2)            # encoding: [0xf1,0xf0,0b0001AAAA,A,0b0010BBBB,B]207# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_U12Imm208# CHECK-NEXT:                                   # fixup B - offset: 4, value: src, kind: FK_390_U12Imm209# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 src 0x0210# CHECK-REL:                                    0x{{[0-9A-F]*4}} R_390_12 src 0x0211        .align 16212        mvo src(16,%r1), src(1,%r2)213 214#SSc215# CHECK: srp src(1,%r1), src(%r15), 0           # encoding: [0xf0,0x00,0b0001AAAA,A,0b1111BBBB,B]216# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_U12Imm217# CHECK-NEXT:                                   # fixup B - offset: 4, value: src, kind: FK_390_U12Imm218# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 src 0x0219# CHECK-REL:                                    0x{{[0-9A-F]*4}} R_390_12 src 0x0220        .align 16221        srp src(1,%r1), src(%r15), 0222 223##BDR12224#SSd225# CHECK: mvck dst(%r2,%r1), src, %r3            # encoding: [0xd9,0x23,0b0001AAAA,A,0b0000BBBB,B]226# CHECK-NEXT:                                   # fixup A - offset: 2, value: dst, kind: FK_390_U12Imm227# CHECK-NEXT:                                   # fixup B - offset: 4, value: src, kind: FK_390_U12Imm228# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 dst 0x0229# CHECK-REL:                                    0x{{[0-9A-F]*4}} R_390_12 src 0x0230        .align 16231	mvck dst(%r2,%r1), src, %r3232 233# CHECK: .insn ss,238594023227392,dst(%r2,%r1),src,%r3  # encoding: [0xd9,0x23,0b0001AAAA,A,0b0000BBBB,B]234# CHECK-NEXT:                                           # fixup A - offset: 2, value: dst, kind: FK_390_U12Imm235# CHECK-NEXT:                                           # fixup B - offset: 4, value: src, kind: FK_390_U12Imm236# CHECK-REL:                                            0x{{[0-9A-F]*2}} R_390_12 dst 0x0237# CHECK-REL:                                            0x{{[0-9A-F]*4}} R_390_12 src 0x0238        .align 16239        .insn ss,0xd90000000000,dst(%r2,%r1),src,%r3	# mvck240 241#SSe242# CHECK: lmd %r2, %r4, src1(%r1), src2(%r1)     # encoding: [0xef,0x24,0b0001AAAA,A,0b0001BBBB,B]243# CHECK-NEXT:                                   # fixup A - offset: 2, value: src1, kind: FK_390_U12Imm244# CHECK-NEXT:                                   # fixup B - offset: 4, value: src2, kind: FK_390_U12Imm245# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 src1 0x0246# CHECK-REL:                                    0x{{[0-9A-F]*4}} R_390_12 src2 0x0247        .align 16248        lmd %r2, %r4, src1(%r1), src2(%r1)249 250#SSf251# CHECK: pka dst(%r15), src(256,%r15)           # encoding: [0xe9,0xff,0b1111AAAA,A,0b1111BBBB,B]252# CHECK-NEXT:                                   # fixup A - offset: 2, value: dst, kind: FK_390_U12Imm253# CHECK-NEXT:                                   # fixup B - offset: 4, value: src, kind: FK_390_U12Imm254# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 dst 0x0255# CHECK-REL:                                    0x{{[0-9A-F]*4}} R_390_12 src 0x0256        .align 16257	pka     dst(%r15), src(256,%r15)258 259#SSE260# CHECK: strag dst(%r1), src(%r15)              # encoding: [0xe5,0x02,0b0001AAAA,A,0b1111BBBB,B]261# CHECK-NEXT:                                   # fixup A - offset: 2, value: dst, kind: FK_390_U12Imm262# CHECK-NEXT:                                   # fixup B - offset: 4, value: src, kind: FK_390_U12Imm263# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 dst 0x0264# CHECK-REL:                                    0x{{[0-9A-F]*4}} R_390_12 src 0x0265        .align 16266        strag dst(%r1), src(%r15)267 268# CHECK: .insn sse,251796752695296,dst(%r1),src(%r15)  # encoding: [0xe5,0x02,0b0001AAAA,A,0b1111BBBB,B]269# CHECK-NEXT:                                          # fixup A - offset: 2, value: dst, kind: FK_390_U12Imm270# CHECK-NEXT:                                          # fixup B - offset: 4, value: src, kind: FK_390_U12Imm271# CHECK-REL:                                           0x{{[0-9A-F]*2}} R_390_12 dst 0x0272# CHECK-REL:                                           0x{{[0-9A-F]*4}} R_390_12 src 0x0273	.align 16274	.insn sse,0xe50200000000,dst(%r1),src(%r15)    # strag275 276#SSF277# CHECK: ectg src, src(%r15), %r2               # encoding: [0xc8,0x21,0b0000AAAA,A,0b1111BBBB,B]278# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_U12Imm279# CHECK-NEXT:                                   # fixup B - offset: 4, value: src, kind: FK_390_U12Imm280# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 src 0x0281# CHECK-REL:                                    0x{{[0-9A-F]*4}} R_390_12 src 0x0282        .align 16283        ectg src, src(%r15), %r2284 285# CHECK: .insn ssf,219906620522496,src,src(%r15),%r2   # encoding: [0xc8,0x21,0b0000AAAA,A,0b1111BBBB,B]286# CHECK-NEXT:                                          # fixup A - offset: 2, value: src, kind: FK_390_U12Imm287# CHECK-NEXT:                                          # fixup B - offset: 4, value: src, kind: FK_390_U12Imm288# CHECK-REL:                                           0x{{[0-9A-F]*2}} R_390_12 src 0x0289# CHECK-REL:                                           0x{{[0-9A-F]*4}} R_390_12 src 0x0290        .align 16291        .insn ssf,0xc80100000000,src,src(%r15),%r2     # ectg292 293##BDV12294# CHECK: vgeg %v0, src(%v0,%r1), 0              # encoding: [0xe7,0x00,0b0001AAAA,A,0x00,0x12]295# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_U12Imm296# CHECK-REL:                                    0x{{[0-9A-F]*2}} R_390_12 src 0x0297        .align 16298        vgeg %v0, src(%v0,%r1), 0299 300## Fixup for second operand only301# CHECK:  mvc     32(8,%r1), src                # encoding: [0xd2,0x07,0x10,0x20,0b0000AAAA,A]302# CHECK-NEXT:                                   # fixup A - offset: 4, value: src, kind: FK_390_U12Imm303        .align 16304        mvc     32(8,%r1),src305 306##U8307# CHECK: cli 0(%r1), src                        # encoding: [0x95,A,0x10,0x00]308# CHECK-NEXT:                                   # fixup A - offset: 1, value: src, kind: FK_390_U8Imm309# CHECK-REL:                                    0x{{[0-9A-F]+}} R_390_8 src 0x0310       .align 16311       cli 0(%r1),src312 313# CHECK: [[L:\..+]]:314# CHECK-NEXT: cli 0(%r1), local_u8-[[L]]        # encoding: [0x95,A,0x10,0x00]315# CHECK-NEXT:                                   # fixup A - offset: 1, value: local_u8-[[L]], kind: FK_390_U8Imm316# CHECK-DIS:                                    95 04 10 00   cli     0(%r1), 4317       .align 16318       cli 0(%r1),local_u8-.319local_u8:320 321##S8322# CHECK: asi 0(%r1), src                        # encoding: [0xeb,A,0x10,0x00,0x00,0x6a]323# CHECK-NEXT:                                   # fixup A - offset: 1, value: src, kind: FK_390_S8Imm324# CHECK-REL:                                    0x{{[0-9A-F]+}} R_390_8 src 0x0325       .align 16326       asi 0(%r1),src327 328# CHECK: [[L:\..+]]:329# CHECK-NEXT: asi 0(%r1), local_s8-[[L]]        # encoding: [0xeb,A,0x10,0x00,0x00,0x6a]330# CHECK-NEXT:                                   # fixup A - offset: 1, value: local_s8-[[L]], kind: FK_390_S8Imm331# CHECK-DIS:                                    eb 06 10 00 00 6a     asi     0(%r1), 6332       .align 16333       asi 0(%r1),local_s8-.334local_s8:335 336##U16337# CHECK: oill %r1, src                          # encoding: [0xa5,0x1b,A,A]338# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_U16Imm339# CHECK-REL:                                    0x{{[0-9A-F]+}} R_390_16 src 0x0340        .align 16341        oill %r1,src342 343# CHECK: [[L:\..+]]:344# CHECK-NEXT: oill %r1, local_u16-[[L]]         # encoding: [0xa5,0x1b,A,A]345# CHECK-NEXT:                                   # fixup A - offset: 2, value: local_u16-[[L]], kind: FK_390_U16Imm346# CHECK-DIS:                                    a5 1b 00 04   oill    %r1, 4347        .align 16348        oill %r1,local_u16-.349local_u16:350 351# CHECK: [[L:\..+]]:352# CHECK-NEXT: oill %r1, src-[[L]]               # encoding: [0xa5,0x1b,A,A]353# CHECK-NEXT:                                   # fixup A - offset: 2, value: src-[[L]], kind: FK_390_U16Imm354# CHECK-REL:                                    0x{{[0-9A-F]+}} R_390_PC16 src 0x2355        .align 16356        oill %r1,src-.357 358##S16359# CHECK: lghi %r1, src                          # encoding: [0xa7,0x19,A,A]360# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_S16Imm361# CHECK-REL:                                    0x{{[0-9A-F]+}} R_390_16 src 0x0362        .align 16363        lghi %r1,src364 365# CHECK: [[L:\..+]]:366# CHECK-NEXT: lghi %r1, local_s16-[[L]]         # encoding: [0xa7,0x19,A,A]367# CHECK-NEXT:                                   # fixup A - offset: 2, value: local_s16-[[L]], kind: FK_390_S16Imm368# CHECK-DIS:                                    a7 19 00 04   lghi    %r1, 4369        .align 16370        lghi %r1,local_s16-.371local_s16:372 373# CHECK: [[L:\..+]]:374# CHECK-NEXT: lghi %r1, src-[[L]]               # encoding: [0xa7,0x19,A,A]375# CHECK-NEXT:                                   # fixup A - offset: 2, value: src-[[L]], kind: FK_390_S16Imm376# CHECK-REL:                                    0x{{[0-9A-F]+}} R_390_PC16 src 0x2377        .align 16378        lghi %r1,src-.379 380##U32381# CHECK: clfi %r1, src                          # encoding: [0xc2,0x1f,A,A,A,A]382# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_U32Imm383# CHECK-REL:                                    0x{{[0-9A-F]+}} R_390_32 src 0x0384        .align 16385        clfi %r1,src386 387# CHECK: [[L:\..+]]:388# CHECK-NEXT: clfi %r1, local_u32-[[L]]         # encoding: [0xc2,0x1f,A,A,A,A]389# CHECK-NEXT:                                   # fixup A - offset: 2, value: local_u32-[[L]], kind: FK_390_U32Imm390# CHECK-DIS:                                    c2 1f 00 00 00 06     clfi    %r1, 6391        .align 16392        clfi %r1,local_u32-.393local_u32:394 395# CHECK: [[L:\..+]]:396# CHECK: clfi %r1, src-[[L]]                    # encoding: [0xc2,0x1f,A,A,A,A]397# CHECK-NEXT:                                   # fixup A - offset: 2, value: src-[[L]], kind: FK_390_U32Imm398# CHECK-REL:                                    0x{{[0-9A-F]+}} R_390_PC32 src 0x2399        .align 16400        clfi %r1,src-.401 402##S32403# CHECK: lgfi %r1, src                          # encoding: [0xc0,0x11,A,A,A,A]404# CHECK-NEXT:                                   # fixup A - offset: 2, value: src, kind: FK_390_S32Imm405# CHECK-REL:                                    0x{{[0-9A-F]+}} R_390_32 src 0x0406        .align 16407        lgfi %r1,src408 409# CHECK: [[L:\..+]]:410# CHECK: lgfi %r1, local_s32-[[L]]              # encoding: [0xc0,0x11,A,A,A,A]411# CHECK-NEXT:                                   # fixup A - offset: 2, value: local_s32-[[L]], kind: FK_390_S32Imm412# CHECK-DIS:                                    c0 11 00 00 00 06     lgfi    %r1, 6413        .align 16414        lgfi %r1,local_s32-.415local_s32:416 417# CHECK: [[L:\..+]]:418# CHECK: lgfi %r1, src-[[L]]                    # encoding: [0xc0,0x11,A,A,A,A]419# CHECK-NEXT:                                   # fixup A - offset: 2, value: src-[[L]], kind: FK_390_S32Imm420# CHECK-REL:                                    0x{{[0-9A-F]+}} R_390_PC32 src 0x2421        .align 16422        lgfi %r1,src-.423 424# CHECK-REL-LABEL: .rela.adjusted425# CHECK-REL:       R_390_GOTENT local426# CHECK-REL:       R_390_PLT32DBL local427.section .adjusted,"ax"428local:429larl %r14, local@got430brasl %r14, local@plt431 432# Data relocs433# llvm-mc does not show any "encoding" string for data, so we just check the relocs434 435# CHECK-REL-LABEL: .rela.data436	.data437 438# CHECK-REL: 0x{{[0-9A-F]*0}} R_390_TLS_LE64 s_ntpoff 0x0439	.align 16440	.quad s_ntpoff@ntpoff441 442# CHECK-REL: 0x{{[0-9A-F]*0}} R_390_TLS_LDO64 s_dtpoff 0x0443	.align 16444	.quad s_dtpoff@dtpoff445 446# CHECK-REL: 0x{{[0-9A-F]*0}} R_390_TLS_LDM64 s_tlsldm 0x0447	.align 16448	.quad s_tlsldm@tlsldm449 450# CHECK-REL: 0x{{[0-9A-F]*0}} R_390_TLS_GD64 s_tlsgd 0x0451	.align 16452	.quad s_tlsgd@tlsgd453 454# CHECK-REL: 0x{{[0-9A-F]*0}} R_390_TLS_LE32 s_ntpoff 0x0455	.align 16456	.long s_ntpoff@ntpoff457 458# CHECK-REL: 0x{{[0-9A-F]*0}} R_390_TLS_LDO32 s_dtpoff 0x0459	.align 16460	.long s_dtpoff@dtpoff461 462# CHECK-REL: 0x{{[0-9A-F]*0}} R_390_TLS_LDM32 s_tlsldm 0x0463	.align 16464	.long s_tlsldm@tlsldm465 466# CHECK-REL: 0x{{[0-9A-F]*0}} R_390_TLS_GD32 s_tlsgd 0x0467	.align 16468	.long s_tlsgd@tlsgd469 470# READELF: TLS     GLOBAL DEFAULT  UND s_indntpoff471# READELF: TLS     GLOBAL DEFAULT  UND s_gdcall472# READELF: TLS     GLOBAL DEFAULT  UND s_ldcall473# READELF: TLS     GLOBAL DEFAULT  UND gdcall474# READELF: TLS     GLOBAL DEFAULT  UND ldcall475# READELF: TLS     GLOBAL DEFAULT  UND s_ntpoff476# READELF: TLS     GLOBAL DEFAULT  UND s_dtpoff477# READELF: TLS     GLOBAL DEFAULT  UND s_tlsldm478# READELF: TLS     GLOBAL DEFAULT  UND s_tlsgd479