brintos

brintos / llvm-project-archived public Read only

0
0
Text · 5.7 KiB · ca4656e Raw
197 lines · plain
1# REQUIRES: mips2# Check generation of MIPS specific ELF header flags.3 4# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux \5# RUN:         %S/Inputs/mips-dynamic.s -o %t-so.o6# RUN: ld.lld %t-so.o --gc-sections -shared -o %t.so7# RUN: llvm-readobj -h -A %t.so | FileCheck -check-prefix=SO %s8 9# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux %s -o %t.o10# RUN: ld.lld %t.o -o %t.exe11# RUN: llvm-readobj -h -A %t.exe | FileCheck -check-prefix=EXE %s12 13# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux \14# RUN:         -mcpu=mips32r2 %s -o %t-r2.o15# RUN: ld.lld %t-r2.o -o %t-r2.exe16# RUN: llvm-readobj -h -A %t-r2.exe | FileCheck -check-prefix=EXE-R2 %s17 18# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux \19# RUN:         -mcpu=mips32r2 %s -o %t-r2.o20# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux \21# RUN:         -mcpu=mips32r5 %S/Inputs/mips-dynamic.s -o %t-r5.o22# RUN: ld.lld %t-r2.o %t-r5.o -o %t-r5.exe23# RUN: llvm-readobj -h -A %t-r5.exe | FileCheck -check-prefix=EXE-R5 %s24 25# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux \26# RUN:         -mcpu=mips32r6 %s -o %t-r6.o27# RUN: ld.lld %t-r6.o -o %t-r6.exe28# RUN: llvm-readobj -h -A %t-r6.exe | FileCheck -check-prefix=EXE-R6 %s29 30# RUN: llvm-mc -filetype=obj -triple=mips64-unknown-linux \31# RUN:         -position-independent -mcpu=octeon %s -o %t.o32# RUN: ld.lld %t.o -o %t.exe33# RUN: llvm-readobj -h -A %t.exe | FileCheck -check-prefix=OCTEON %s34 35# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux %s -o %t.o36# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux \37# RUN:         -mattr=micromips %S/Inputs/mips-fpic.s -o %t-mm.o38# RUN: ld.lld %t.o %t-mm.o -o %t.exe39# RUN: llvm-readobj -h -A %t.exe | FileCheck -check-prefix=MICRO %s40 41  .text42  .globl  __start43__start:44  nop45 46# SO:      Flags [47# SO-NEXT:   EF_MIPS_ABI_O3248# SO-NEXT:   EF_MIPS_ARCH_3249# SO-NEXT:   EF_MIPS_CPIC50# SO-NEXT:   EF_MIPS_PIC51# SO-NEXT: ]52# SO:      MIPS ABI Flags {53# SO-NEXT:   Version: 054# SO-NEXT:   ISA: MIPS3255# SO-NEXT:   ISA Extension: None56# SO-NEXT:   ASEs [57# SO-NEXT:   ]58# SO-NEXT:   FP ABI: Hard float (double precision)59# SO-NEXT:   GPR size: 3260# SO-NEXT:   CPR1 size: 3261# SO-NEXT:   CPR2 size: 062# SO-NEXT:   Flags 1 [63# SO-NEXT:     ODDSPREG64# SO-NEXT:   ]65# SO-NEXT:   Flags 2: 0x066# SO-NEXT: }67 68# EXE:      Flags [69# EXE-NEXT:   EF_MIPS_ABI_O3270# EXE-NEXT:   EF_MIPS_ARCH_3271# EXE-NEXT:   EF_MIPS_CPIC72# EXE-NEXT: ]73# EXE:      MIPS ABI Flags {74# EXE-NEXT:   Version: 075# EXE-NEXT:   ISA: MIPS3276# EXE-NEXT:   ISA Extension: None77# EXE-NEXT:   ASEs [78# EXE-NEXT:   ]79# EXE-NEXT:   FP ABI: Hard float (double precision)80# EXE-NEXT:   GPR size: 3281# EXE-NEXT:   CPR1 size: 3282# EXE-NEXT:   CPR2 size: 083# EXE-NEXT:   Flags 1 [84# EXE-NEXT:     ODDSPREG85# EXE-NEXT:   ]86# EXE-NEXT:   Flags 2: 0x087# EXE-NEXT: }88 89# EXE-R2:      Flags [90# EXE-R2-NEXT:   EF_MIPS_ABI_O3291# EXE-R2-NEXT:   EF_MIPS_ARCH_32R292# EXE-R2-NEXT:   EF_MIPS_CPIC93# EXE-R2-NEXT: ]94# EXE-R2:      MIPS ABI Flags {95# EXE-R2-NEXT:   Version: 096# EXE-R2-NEXT:   ISA: MIPS32r297# EXE-R2-NEXT:   ISA Extension: None98# EXE-R2-NEXT:   ASEs [99# EXE-R2-NEXT:   ]100# EXE-R2-NEXT:   FP ABI: Hard float (double precision)101# EXE-R2-NEXT:   GPR size: 32102# EXE-R2-NEXT:   CPR1 size: 32103# EXE-R2-NEXT:   CPR2 size: 0104# EXE-R2-NEXT:   Flags 1 [105# EXE-R2-NEXT:     ODDSPREG106# EXE-R2-NEXT:   ]107# EXE-R2-NEXT:   Flags 2: 0x0108# EXE-R2-NEXT: }109 110# EXE-R5:      Flags [111# EXE-R5-NEXT:   EF_MIPS_ABI_O32112# EXE-R5-NEXT:   EF_MIPS_ARCH_32R2113# EXE-R5-NEXT:   EF_MIPS_CPIC114# EXE-R5-NEXT: ]115# EXE-R5:      MIPS ABI Flags {116# EXE-R5-NEXT:   Version: 0117# EXE-R5-NEXT:   ISA: MIPS32r5118# EXE-R5-NEXT:   ISA Extension: None119# EXE-R5-NEXT:   ASEs [120# EXE-R5-NEXT:   ]121# EXE-R5-NEXT:   FP ABI: Hard float (double precision)122# EXE-R5-NEXT:   GPR size: 32123# EXE-R5-NEXT:   CPR1 size: 32124# EXE-R5-NEXT:   CPR2 size: 0125# EXE-R5-NEXT:   Flags 1 [126# EXE-R5-NEXT:     ODDSPREG127# EXE-R5-NEXT:   ]128# EXE-R5-NEXT:   Flags 2: 0x0129# EXE-R5-NEXT: }130 131# EXE-R6:      Flags [132# EXE-R6-NEXT:   EF_MIPS_ABI_O32133# EXE-R6-NEXT:   EF_MIPS_ARCH_32R6134# EXE-R6-NEXT:   EF_MIPS_CPIC135# EXE-R6-NEXT:   EF_MIPS_NAN2008136# EXE-R6-NEXT: ]137# EXE-R6:      MIPS ABI Flags {138# EXE-R6-NEXT:   Version: 0139# EXE-R6-NEXT:   ISA: MIPS32140# EXE-R6-NEXT:   ISA Extension: None141# EXE-R6-NEXT:   ASEs [142# EXE-R6-NEXT:   ]143# EXE-R6-NEXT:   FP ABI: Hard float (32-bit CPU, 64-bit FPU)144# EXE-R6-NEXT:   GPR size: 32145# EXE-R6-NEXT:   CPR1 size: 64146# EXE-R6-NEXT:   CPR2 size: 0147# EXE-R6-NEXT:   Flags 1 [148# EXE-R6-NEXT:     ODDSPREG149# EXE-R6-NEXT:   ]150# EXE-R6-NEXT:   Flags 2: 0x0151# EXE-R6-NEXT: }152 153# OCTEON:      Flags [154# OCTEON-NEXT:   EF_MIPS_ARCH_64R2155# OCTEON-NEXT:   EF_MIPS_CPIC156# OCTEON-NEXT:   EF_MIPS_MACH_OCTEON157# OCTEON-NEXT:   EF_MIPS_PIC158# OCTEON-NEXT: ]159# OCTEON:      MIPS ABI Flags {160# OCTEON-NEXT:   Version: 0161# OCTEON-NEXT:   ISA: MIPS64r2162# OCTEON-NEXT:   ISA Extension: Cavium Networks Octeon163# OCTEON-NEXT:   ASEs [164# OCTEON-NEXT:   ]165# OCTEON-NEXT:   FP ABI: Hard float (double precision)166# OCTEON-NEXT:   GPR size: 64167# OCTEON-NEXT:   CPR1 size: 64168# OCTEON-NEXT:   CPR2 size: 0169# OCTEON-NEXT:   Flags 1 [170# OCTEON-NEXT:     ODDSPREG171# OCTEON-NEXT:   ]172# OCTEON-NEXT:   Flags 2: 0x0173# OCTEON-NEXT: }174 175# MICRO:      Flags [176# MICRO-NEXT:   EF_MIPS_ABI_O32177# MICRO-NEXT:   EF_MIPS_ARCH_32178# MICRO-NEXT:   EF_MIPS_CPIC179# MICRO-NEXT:   EF_MIPS_MICROMIPS180# MICRO-NEXT: ]181# MICRO:      MIPS ABI Flags {182# MICRO-NEXT:   Version: 0183# MICRO-NEXT:   ISA: MIPS32184# MICRO-NEXT:   ISA Extension: None185# MICRO-NEXT:   ASEs [186# MICRO-NEXT:     microMIPS187# MICRO-NEXT:   ]188# MICRO-NEXT:   FP ABI: Hard float (double precision)189# MICRO-NEXT:   GPR size: 32190# MICRO-NEXT:   CPR1 size: 32191# MICRO-NEXT:   CPR2 size: 0192# MICRO-NEXT:   Flags 1 [193# MICRO-NEXT:     ODDSPREG194# MICRO-NEXT:   ]195# MICRO-NEXT:   Flags 2: 0x0196# MICRO-NEXT: }197