2018-07-11 00:51:17 +08:00
|
|
|
# REQUIRES: mips
|
|
|
|
#
|
|
|
|
# Check warning and errors in case of input
|
|
|
|
# files with incompatible floating point ABI flags.
|
|
|
|
|
2020-02-06 02:24:51 +08:00
|
|
|
# RUN: yaml2obj --docnum=1 %s -o %t-dbl.o
|
|
|
|
# RUN: yaml2obj --docnum=2 %s -o %t-sgl.o
|
|
|
|
# RUN: yaml2obj --docnum=3 %s -o %t-soft.o
|
|
|
|
# RUN: yaml2obj --docnum=4 %s -o %t-fp64.o
|
|
|
|
# RUN: yaml2obj --docnum=5 %s -o %t-fp64old.o
|
|
|
|
# RUN: yaml2obj --docnum=6 %s -o %t-fp64a.o
|
|
|
|
# RUN: yaml2obj --docnum=7 %s -o %t-fpxx.o
|
2018-07-11 00:51:17 +08:00
|
|
|
|
|
|
|
# RUN: not ld.lld %t-dbl.o %t-fp64.o -shared -o /dev/null 2>&1 \
|
|
|
|
# RUN: | FileCheck -check-prefixes=DBLFP64 %s
|
|
|
|
|
|
|
|
# RUN: not ld.lld %t-sgl.o %t-fp64old.o -shared -o /dev/null 2>&1 \
|
|
|
|
# RUN: | FileCheck -check-prefixes=SGLFP64OLD %s
|
|
|
|
|
|
|
|
# RUN: not ld.lld %t-soft.o %t-fp64a.o -shared -o /dev/null 2>&1 \
|
|
|
|
# RUN: | FileCheck -check-prefixes=SOFTFP64A %s
|
|
|
|
|
|
|
|
# RUN: not ld.lld %t-sgl.o %t-fpxx.o -shared -o /dev/null 2>&1 \
|
|
|
|
# RUN: | FileCheck -check-prefixes=SGLFPXX %s
|
|
|
|
|
|
|
|
# DBLFP64: {{.*}}fp64.o: floating point ABI '-mgp32 -mfp64' is incompatible with target floating point ABI '-mdouble-float'
|
|
|
|
# SGLFP64OLD: {{.*}}fp64old.o: floating point ABI '-mgp32 -mfp64 (old)' is incompatible with target floating point ABI '-msingle-float'
|
|
|
|
# SOFTFP64A: {{.*}}fp64a.o: floating point ABI '-mgp32 -mfp64 -mno-odd-spreg' is incompatible with target floating point ABI '-msoft-float'
|
|
|
|
# SGLFPXX: {{.*}}fpxx.o: floating point ABI '-mfpxx' is incompatible with target floating point ABI '-msingle-float'
|
|
|
|
|
|
|
|
# dbl.o
|
|
|
|
--- !ELF
|
|
|
|
FileHeader:
|
|
|
|
Class: ELFCLASS64
|
|
|
|
Data: ELFDATA2MSB
|
|
|
|
Type: ET_REL
|
|
|
|
Machine: EM_MIPS
|
|
|
|
Flags: [ EF_MIPS_ARCH_64 ]
|
|
|
|
|
|
|
|
Sections:
|
|
|
|
- Name: .MIPS.abiflags
|
|
|
|
Type: SHT_MIPS_ABIFLAGS
|
|
|
|
ISA: MIPS64
|
|
|
|
ASEs: []
|
|
|
|
FpABI: FP_DOUBLE
|
|
|
|
GPRSize: REG_64
|
|
|
|
CPR1Size: REG_64
|
|
|
|
CPR2Size: REG_NONE
|
|
|
|
|
|
|
|
# sgl.o
|
|
|
|
--- !ELF
|
|
|
|
FileHeader:
|
|
|
|
Class: ELFCLASS64
|
|
|
|
Data: ELFDATA2MSB
|
|
|
|
Type: ET_REL
|
|
|
|
Machine: EM_MIPS
|
|
|
|
Flags: [ EF_MIPS_ARCH_64 ]
|
|
|
|
|
|
|
|
Sections:
|
|
|
|
- Name: .MIPS.abiflags
|
|
|
|
Type: SHT_MIPS_ABIFLAGS
|
|
|
|
ISA: MIPS64
|
|
|
|
ASEs: []
|
|
|
|
FpABI: FP_SINGLE
|
|
|
|
GPRSize: REG_64
|
|
|
|
CPR1Size: REG_64
|
|
|
|
CPR2Size: REG_NONE
|
|
|
|
|
|
|
|
# soft.o
|
|
|
|
--- !ELF
|
|
|
|
FileHeader:
|
|
|
|
Class: ELFCLASS64
|
|
|
|
Data: ELFDATA2MSB
|
|
|
|
Type: ET_REL
|
|
|
|
Machine: EM_MIPS
|
|
|
|
Flags: [ EF_MIPS_ARCH_64 ]
|
|
|
|
|
|
|
|
Sections:
|
|
|
|
- Name: .MIPS.abiflags
|
|
|
|
Type: SHT_MIPS_ABIFLAGS
|
|
|
|
ISA: MIPS64
|
|
|
|
ASEs: []
|
|
|
|
FpABI: FP_SOFT
|
|
|
|
GPRSize: REG_64
|
|
|
|
CPR1Size: REG_64
|
|
|
|
CPR2Size: REG_NONE
|
|
|
|
|
|
|
|
# fp64.o
|
|
|
|
--- !ELF
|
|
|
|
FileHeader:
|
|
|
|
Class: ELFCLASS64
|
|
|
|
Data: ELFDATA2MSB
|
|
|
|
Type: ET_REL
|
|
|
|
Machine: EM_MIPS
|
|
|
|
Flags: [ EF_MIPS_ARCH_64 ]
|
|
|
|
|
|
|
|
Sections:
|
|
|
|
- Name: .MIPS.abiflags
|
|
|
|
Type: SHT_MIPS_ABIFLAGS
|
|
|
|
ISA: MIPS64
|
|
|
|
ASEs: []
|
|
|
|
FpABI: FP_64
|
|
|
|
GPRSize: REG_64
|
|
|
|
CPR1Size: REG_64
|
|
|
|
CPR2Size: REG_NONE
|
|
|
|
|
|
|
|
# fp64old.o
|
|
|
|
--- !ELF
|
|
|
|
FileHeader:
|
|
|
|
Class: ELFCLASS64
|
|
|
|
Data: ELFDATA2MSB
|
|
|
|
Type: ET_REL
|
|
|
|
Machine: EM_MIPS
|
|
|
|
Flags: [ EF_MIPS_ARCH_64 ]
|
|
|
|
|
|
|
|
Sections:
|
|
|
|
- Name: .MIPS.abiflags
|
|
|
|
Type: SHT_MIPS_ABIFLAGS
|
|
|
|
ISA: MIPS64
|
|
|
|
ASEs: []
|
|
|
|
FpABI: FP_OLD_64
|
|
|
|
GPRSize: REG_64
|
|
|
|
CPR1Size: REG_64
|
|
|
|
CPR2Size: REG_NONE
|
|
|
|
|
|
|
|
# fp64a.o
|
|
|
|
--- !ELF
|
|
|
|
FileHeader:
|
|
|
|
Class: ELFCLASS64
|
|
|
|
Data: ELFDATA2MSB
|
|
|
|
Type: ET_REL
|
|
|
|
Machine: EM_MIPS
|
|
|
|
Flags: [ EF_MIPS_ARCH_64 ]
|
|
|
|
|
|
|
|
Sections:
|
|
|
|
- Name: .MIPS.abiflags
|
|
|
|
Type: SHT_MIPS_ABIFLAGS
|
|
|
|
ISA: MIPS64
|
|
|
|
ASEs: []
|
|
|
|
FpABI: FP_64A
|
|
|
|
GPRSize: REG_64
|
|
|
|
CPR1Size: REG_64
|
|
|
|
CPR2Size: REG_NONE
|
|
|
|
|
|
|
|
# fpxx.o
|
|
|
|
--- !ELF
|
|
|
|
FileHeader:
|
|
|
|
Class: ELFCLASS64
|
|
|
|
Data: ELFDATA2MSB
|
|
|
|
Type: ET_REL
|
|
|
|
Machine: EM_MIPS
|
|
|
|
Flags: [ EF_MIPS_ARCH_64 ]
|
|
|
|
|
|
|
|
Sections:
|
|
|
|
- Name: .MIPS.abiflags
|
|
|
|
Type: SHT_MIPS_ABIFLAGS
|
|
|
|
ISA: MIPS64
|
|
|
|
ASEs: []
|
|
|
|
FpABI: FP_XX
|
|
|
|
GPRSize: REG_64
|
|
|
|
CPR1Size: REG_64
|
|
|
|
CPR2Size: REG_NONE
|