brintos

brintos / llvm-project-archived public Read only

0
0
Text · 10.0 KiB · 4f87568 Raw
246 lines · plain
1# RUN: llvm-mc -triple mips-unknown-linux < %s -show-encoding -target-abi=o32 \2# RUN:     | FileCheck -check-prefix=ASM %s3# RUN: llvm-mc -triple mips64-unknown-linux < %s -show-encoding -target-abi=n32 \4# RUN:     | FileCheck -check-prefix=ASM %s5# RUN: llvm-mc -triple mips64-unknown-linux < %s -show-encoding -target-abi=n64 \6# RUN:     | FileCheck -check-prefix=ASM %s7# RUN: llvm-mc -triple mips-unknown-linux < %s -show-encoding -target-abi=o32 \8# RUN:     -filetype=obj | llvm-readobj --sections --section-data -r - | \9# RUN:     FileCheck -check-prefix=OBJ-O32 %s10# RUN: llvm-mc -triple mips64-unknown-linux < %s -show-encoding -target-abi=n32 \11# RUN:     -filetype=obj | llvm-readobj --sections --section-data -r - | \12# RUN:     FileCheck -check-prefix=OBJ-N32 %s13# RUN: llvm-mc -triple mips64-unknown-linux < %s -show-encoding -target-abi=n64 \14# RUN:     -filetype=obj | llvm-readobj --sections --section-data -r - | \15# RUN:     FileCheck -check-prefix=OBJ-N64 %s16	.text17foo:18# ASM: .reloc {{.*}}+4, R_MIPS_NONE, foo19	.reloc .+4, R_MIPS_NONE, foo20	.reloc .+0, R_MIPS_NONE, foo+421	.reloc .+8, R_MIPS_32, foo+822	nop23	nop24	nop25	.reloc ., R_MIPS_NONE26        nop27  .reloc ., R_MIPS_CALL_HI16, 428  nop29  .reloc ., R_MIPS_CALL_LO16, 430  nop31  .reloc ., R_MIPS_CALL16, 432  nop33  .reloc ., R_MIPS_GOT16, 434  nop35  .reloc ., R_MIPS_GOT_PAGE, 436  nop37  .reloc ., R_MIPS_GOT_OFST, 438  nop39  .reloc ., R_MIPS_GOT_DISP, 440  nop41  .reloc ., R_MIPS_GOT_HI16, 442  nop43  .reloc ., R_MIPS_GOT_LO16, 444  nop45  .reloc ., R_MIPS_TLS_GOTTPREL, 446  nop47  .reloc ., R_MIPS_TLS_DTPREL_HI16, 448  nop49  .reloc ., R_MIPS_TLS_DTPREL_LO16, 450  nop51  .reloc ., R_MIPS_TLS_GD, 452  nop53  .reloc ., R_MIPS_TLS_LDM, 454  nop55  .reloc ., R_MIPS_TLS_TPREL_HI16, 456  nop57  .reloc ., R_MIPS_TLS_TPREL_LO16, 458  nop59  .reloc ., R_MICROMIPS_CALL16, 460  nop61  .reloc ., R_MICROMIPS_GOT_DISP, 462  nop63  .reloc ., R_MICROMIPS_GOT_PAGE, 464  nop65  .reloc ., R_MICROMIPS_GOT_OFST, 466  nop67  .reloc ., R_MICROMIPS_GOT16, 468  nop69  .reloc ., R_MICROMIPS_TLS_GOTTPREL, 470  nop71  .reloc ., R_MICROMIPS_TLS_DTPREL_HI16, 472  nop73  .reloc ., R_MICROMIPS_TLS_DTPREL_LO16, 474  nop75  .reloc ., R_MICROMIPS_TLS_GD, 476  nop77  .reloc ., R_MICROMIPS_TLS_LDM, 478  nop79  .reloc ., R_MICROMIPS_TLS_TPREL_HI16, 480  nop81  .reloc ., R_MICROMIPS_TLS_TPREL_LO16, 482  nop83  .reloc ., R_MIPS_JALR, 484  nop85  .reloc ., R_MICROMIPS_JALR, 486  nop87  .reloc ., BFD_RELOC_NONE, 988  .reloc ., BFD_RELOC_16, 989  .reloc ., BFD_RELOC_32, 990  .reloc ., BFD_RELOC_64, 991  nop92 93# OBJ-O32-LABEL: Name: .text94# OBJ-O32:       0000: 00000000 00000000 00000008 0000000095# OBJ-O32-NEXT:  0010: 00000000 00000004 00000000 0000000096# OBJ-O32-NEXT:  0020: 00000004 00000004 00000004 0000000097# OBJ-O32-NEXT:  0030: 00000004 00000000 00000000 0000000098# OBJ-O32-NEXT:  0040: 00000000 00000000 00000000 0000000099# OBJ-O32-NEXT:  0050: 00000000 00000004 00000004 00000004100# OBJ-O32-NEXT:  0060: 00000000 00000000 00000000 00000000101# OBJ-O32-NEXT:  0070: 00000000 00000000 00000000 00000000102# OBJ-O32-NEXT:  0080: 00000000 00000000103# OBJ-O32-LABEL: }104# OBJ-O32-LABEL: Relocations [105# OBJ-O32:       0x0 R_MIPS_NONE .text106# OBJ-O32-NEXT:  0x4 R_MIPS_NONE .text107# OBJ-O32-NEXT:  0x8 R_MIPS_32 .text108# OBJ-O32-NEXT:  0xC R_MIPS_NONE -109# OBJ-O32-NEXT:  0x10 R_MIPS_CALL_HI16 -110# OBJ-O32-NEXT:  0x14 R_MIPS_CALL_LO16 -111# OBJ-O32-NEXT:  0x18 R_MIPS_CALL16 -112# OBJ-O32-NEXT:  0x20 R_MIPS_GOT_PAGE -113# OBJ-O32-NEXT:  0x24 R_MIPS_GOT_OFST -114# OBJ-O32-NEXT:  0x28 R_MIPS_GOT_DISP -115# OBJ-O32-NEXT:  0x2C R_MIPS_GOT_HI16 -116# OBJ-O32-NEXT:  0x30 R_MIPS_GOT_LO16 -117# OBJ-O32-NEXT:  0x34 R_MIPS_TLS_GOTTPREL -118# OBJ-O32-NEXT:  0x38 R_MIPS_TLS_DTPREL_HI16 -119# OBJ-O32-NEXT:  0x3C R_MIPS_TLS_DTPREL_LO16 -120# OBJ-O32-NEXT:  0x40 R_MIPS_TLS_GD -121# OBJ-O32-NEXT:  0x44 R_MIPS_TLS_LDM -122# OBJ-O32-NEXT:  0x48 R_MIPS_TLS_TPREL_HI16 -123# OBJ-O32-NEXT:  0x4C R_MIPS_TLS_TPREL_LO16 -124# OBJ-O32-NEXT:  0x50 R_MICROMIPS_CALL16 -125# OBJ-O32-NEXT:  0x54 R_MICROMIPS_GOT_DISP -126# OBJ-O32-NEXT:  0x58 R_MICROMIPS_GOT_PAGE -127# OBJ-O32-NEXT:  0x5C R_MICROMIPS_GOT_OFST -128# OBJ-O32-NEXT:  0x64 R_MICROMIPS_TLS_GOTTPREL -129# OBJ-O32-NEXT:  0x68 R_MICROMIPS_TLS_DTPREL_HI16 -130# OBJ-O32-NEXT:  0x6C R_MICROMIPS_TLS_DTPREL_LO16 -131# OBJ-O32-NEXT:  0x70 R_MICROMIPS_TLS_GD -132# OBJ-O32-NEXT:  0x74 R_MICROMIPS_TLS_LDM -133# OBJ-O32-NEXT:  0x78 R_MICROMIPS_TLS_TPREL_HI16 -134# OBJ-O32-NEXT:  0x7C R_MICROMIPS_TLS_TPREL_LO16 -135# OBJ-O32-NEXT:  0x80 R_MIPS_JALR -136# OBJ-O32-NEXT:  0x84 R_MICROMIPS_JALR -137# OBJ-O32-NEXT:  0x88 R_MIPS_NONE -138# OBJ-O32-NEXT:  0x88 R_MIPS_16 -139# OBJ-O32-NEXT:  0x88 R_MIPS_32 -140# OBJ-O32-NEXT:  0x88 R_MIPS_64 -141# OBJ-O32-NEXT:  0x1C R_MIPS_GOT16 -142# OBJ-O32-NEXT:  0x60 R_MICROMIPS_GOT16 -143 144# OBJ-N32-LABEL: Name: .text145# OBJ-N32:       0000: 00000000 00000000 00000000 00000000146# OBJ-N32-NEXT:  0010: 00000000 00000000 00000000 00000000147# OBJ-N32-NEXT:  0020: 00000000 00000000 00000000 00000000148# OBJ-N32-NEXT:  0030: 00000000 00000000 00000000 00000000149# OBJ-N32-NEXT:  0040: 00000000 00000000 00000000 00000000150# OBJ-N32-NEXT:  0050: 00000000 00000000 00000000 00000000151# OBJ-N32-NEXT:  0060: 00000000 00000000 00000000 00000000152# OBJ-N32-NEXT:  0070: 00000000 00000000 00000000 00000000153# OBJ-N32-NEXT:  0080: 00000000 00000000154# OBJ-N32-LABEL: }155# OBJ-N32-LABEL: Relocations [156 157# OBJ-N32:       0x4 R_MIPS_NONE .text 0x0158# OBJ-N32-NEXT:  0x0 R_MIPS_NONE .text 0x4159# OBJ-N32-NEXT:  0x8 R_MIPS_32   .text 0x8160# OBJ-N32-NEXT:  0xC R_MIPS_NONE -     0x0161# OBJ-N32-NEXT:  0x10 R_MIPS_CALL_HI16 - 0x4162# OBJ-N32-NEXT:  0x14 R_MIPS_CALL_LO16 - 0x4163# OBJ-N32-NEXT:  0x18 R_MIPS_CALL16 - 0x4164# OBJ-N32-NEXT:  0x1C R_MIPS_GOT16 - 0x4165# OBJ-N32-NEXT:  0x20 R_MIPS_GOT_PAGE - 0x4166# OBJ-N32-NEXT:  0x24 R_MIPS_GOT_OFST - 0x4167# OBJ-N32-NEXT:  0x28 R_MIPS_GOT_DISP - 0x4168# OBJ-N32-NEXT:  0x2C R_MIPS_GOT_HI16 - 0x4169# OBJ-N32-NEXT:  0x30 R_MIPS_GOT_LO16 - 0x4170# OBJ-N32-NEXT:  0x34 R_MIPS_TLS_GOTTPREL - 0x4171# OBJ-N32-NEXT:  0x38 R_MIPS_TLS_DTPREL_HI16 - 0x4172# OBJ-N32-NEXT:  0x3C R_MIPS_TLS_DTPREL_LO16 - 0x4173# OBJ-N32-NEXT:  0x40 R_MIPS_TLS_GD - 0x4174# OBJ-N32-NEXT:  0x44 R_MIPS_TLS_LDM - 0x4175# OBJ-N32-NEXT:  0x48 R_MIPS_TLS_TPREL_HI16 - 0x4176# OBJ-N32-NEXT:  0x4C R_MIPS_TLS_TPREL_LO16 - 0x4177# OBJ-N32-NEXT:  0x50 R_MICROMIPS_CALL16 - 0x4178# OBJ-N32-NEXT:  0x54 R_MICROMIPS_GOT_DISP - 0x4179# OBJ-N32-NEXT:  0x58 R_MICROMIPS_GOT_PAGE - 0x4180# OBJ-N32-NEXT:  0x5C R_MICROMIPS_GOT_OFST - 0x4181# OBJ-N32-NEXT:  0x60 R_MICROMIPS_GOT16 - 0x4182# OBJ-N32-NEXT:  0x64 R_MICROMIPS_TLS_GOTTPREL - 0x4183# OBJ-N32-NEXT:  0x68 R_MICROMIPS_TLS_DTPREL_HI16 - 0x4184# OBJ-N32-NEXT:  0x6C R_MICROMIPS_TLS_DTPREL_LO16 - 0x4185# OBJ-N32-NEXT:  0x70 R_MICROMIPS_TLS_GD - 0x4186# OBJ-N32-NEXT:  0x74 R_MICROMIPS_TLS_LDM - 0x4187# OBJ-N32-NEXT:  0x78 R_MICROMIPS_TLS_TPREL_HI16 - 0x4188# OBJ-N32-NEXT:  0x7C R_MICROMIPS_TLS_TPREL_LO16 - 0x4189# OBJ-N32-NEXT:  0x80 R_MIPS_JALR - 0x4190# OBJ-N32-NEXT:  0x84 R_MICROMIPS_JALR - 0x4191# OBJ-N32-NEXT:  0x88 R_MIPS_NONE - 0x9192# OBJ-N32-NEXT:  0x88 R_MIPS_16 - 0x9193# OBJ-N32-NEXT:  0x88 R_MIPS_32 - 0x9194# OBJ-N32-NEXT:  0x88 R_MIPS_64 - 0x9195 196# OBJ-N64-LABEL: Name: .text197# OBJ-N64:       0000: 00000000 00000000 00000000 00000000198# OBJ-N64-NEXT:  0010: 00000000 00000000 00000000 00000000199# OBJ-N64-NEXT:  0020: 00000000 00000000 00000000 00000000200# OBJ-N64-NEXT:  0030: 00000000 00000000 00000000 00000000201# OBJ-N64-NEXT:  0040: 00000000 00000000 00000000 00000000202# OBJ-N64-NEXT:  0050: 00000000 00000000 00000000 00000000203# OBJ-N64-NEXT:  0060: 00000000 00000000 00000000 00000000204# OBJ-N64-NEXT:  0070: 00000000 00000000 00000000 00000000205# OBJ-N64-NEXT:  0080: 00000000 00000000206# OBJ-N64-LABEL: }207# OBJ-N64-LABEL: Relocations [208# OBJ-N64:       0x4 R_MIPS_NONE/R_MIPS_NONE/R_MIPS_NONE .text 0x0209# OBJ-N64-NEXT:  0x0 R_MIPS_NONE/R_MIPS_NONE/R_MIPS_NONE .text 0x4210# OBJ-N64-NEXT:  0x8 R_MIPS_32/R_MIPS_NONE/R_MIPS_NONE .text 0x8211# OBJ-N64-NEXT:  0xC R_MIPS_NONE/R_MIPS_NONE/R_MIPS_NONE -   0x0212# OBJ-N64-NEXT:  0x10 R_MIPS_CALL_HI16/R_MIPS_NONE/R_MIPS_NONE - 0x4213# OBJ-N64-NEXT:  0x14 R_MIPS_CALL_LO16/R_MIPS_NONE/R_MIPS_NONE - 0x4214# OBJ-N64-NEXT:  0x18 R_MIPS_CALL16/R_MIPS_NONE/R_MIPS_NONE - 0x4215# OBJ-N64-NEXT:  0x1C R_MIPS_GOT16/R_MIPS_NONE/R_MIPS_NONE - 0x4216# OBJ-N64-NEXT:  0x20 R_MIPS_GOT_PAGE/R_MIPS_NONE/R_MIPS_NONE - 0x4217# OBJ-N64-NEXT:  0x24 R_MIPS_GOT_OFST/R_MIPS_NONE/R_MIPS_NONE - 0x4218# OBJ-N64-NEXT:  0x28 R_MIPS_GOT_DISP/R_MIPS_NONE/R_MIPS_NONE - 0x4219# OBJ-N64-NEXT:  0x2C R_MIPS_GOT_HI16/R_MIPS_NONE/R_MIPS_NONE - 0x4220# OBJ-N64-NEXT:  0x30 R_MIPS_GOT_LO16/R_MIPS_NONE/R_MIPS_NONE - 0x4221# OBJ-N64-NEXT:  0x34 R_MIPS_TLS_GOTTPREL/R_MIPS_NONE/R_MIPS_NONE - 0x4222# OBJ-N64-NEXT:  0x38 R_MIPS_TLS_DTPREL_HI16/R_MIPS_NONE/R_MIPS_NONE - 0x4223# OBJ-N64-NEXT:  0x3C R_MIPS_TLS_DTPREL_LO16/R_MIPS_NONE/R_MIPS_NONE - 0x4224# OBJ-N64-NEXT:  0x40 R_MIPS_TLS_GD/R_MIPS_NONE/R_MIPS_NONE - 0x4225# OBJ-N64-NEXT:  0x44 R_MIPS_TLS_LDM/R_MIPS_NONE/R_MIPS_NONE - 0x4226# OBJ-N64-NEXT:  0x48 R_MIPS_TLS_TPREL_HI16/R_MIPS_NONE/R_MIPS_NONE - 0x4227# OBJ-N64-NEXT:  0x4C R_MIPS_TLS_TPREL_LO16/R_MIPS_NONE/R_MIPS_NONE - 0x4228# OBJ-N64-NEXT:  0x50 R_MICROMIPS_CALL16/R_MIPS_NONE/R_MIPS_NONE - 0x4229# OBJ-N64-NEXT:  0x54 R_MICROMIPS_GOT_DISP/R_MIPS_NONE/R_MIPS_NONE - 0x4230# OBJ-N64-NEXT:  0x58 R_MICROMIPS_GOT_PAGE/R_MIPS_NONE/R_MIPS_NONE - 0x4231# OBJ-N64-NEXT:  0x5C R_MICROMIPS_GOT_OFST/R_MIPS_NONE/R_MIPS_NONE - 0x4232# OBJ-N64-NEXT:  0x60 R_MICROMIPS_GOT16/R_MIPS_NONE/R_MIPS_NONE - 0x4233# OBJ-N64-NEXT:  0x64 R_MICROMIPS_TLS_GOTTPREL/R_MIPS_NONE/R_MIPS_NONE - 0x4234# OBJ-N64-NEXT:  0x68 R_MICROMIPS_TLS_DTPREL_HI16/R_MIPS_NONE/R_MIPS_NONE - 0x4235# OBJ-N64-NEXT:  0x6C R_MICROMIPS_TLS_DTPREL_LO16/R_MIPS_NONE/R_MIPS_NONE - 0x4236# OBJ-N64-NEXT:  0x70 R_MICROMIPS_TLS_GD/R_MIPS_NONE/R_MIPS_NONE - 0x4237# OBJ-N64-NEXT:  0x74 R_MICROMIPS_TLS_LDM/R_MIPS_NONE/R_MIPS_NONE - 0x4238# OBJ-N64-NEXT:  0x78 R_MICROMIPS_TLS_TPREL_HI16/R_MIPS_NONE/R_MIPS_NONE - 0x4239# OBJ-N64-NEXT:  0x7C R_MICROMIPS_TLS_TPREL_LO16/R_MIPS_NONE/R_MIPS_NONE - 0x4240# OBJ-N64-NEXT:  0x80 R_MIPS_JALR/R_MIPS_NONE/R_MIPS_NONE - 0x4241# OBJ-N64-NEXT:  0x84 R_MICROMIPS_JALR/R_MIPS_NONE/R_MIPS_NONE - 0x4242# OBJ-N64-NEXT:  0x88 R_MIPS_NONE/R_MIPS_NONE/R_MIPS_NONE - 0x9243# OBJ-N64-NEXT:  0x88 R_MIPS_16/R_MIPS_NONE/R_MIPS_NONE - 0x9244# OBJ-N64-NEXT:  0x88 R_MIPS_32/R_MIPS_NONE/R_MIPS_NONE - 0x9245# OBJ-N64-NEXT:  0x88 R_MIPS_64/R_MIPS_NONE/R_MIPS_NONE - 0x9246