1# RUN: llvm-mc %s -arch=mips -mcpu=mips32r2 -mattr=+msa,+fp64 -filetype=obj -o - | \ 2# RUN: llvm-readobj -s -section-data | \ 3# RUN: FileCheck %s -check-prefix=ELF32 4 5# RUN: llvm-mc %s -arch=mips64 -mcpu=mips64r2 -mattr=+msa,+fp64 -target-abi n32 -filetype=obj -o - | \ 6# RUN: llvm-readobj -s -section-data | \ 7# RUN: FileCheck %s -check-prefix=ELF32 8 9# RUN: llvm-mc %s -arch=mips64 -mcpu=mips64r2 -mattr=+msa,+fp64 -target-abi n64 -filetype=obj -o - | \ 10# RUN: llvm-readobj -s -section-data | \ 11# RUN: FileCheck %s -check-prefix=ELF64 12 13# ELF32: Section { 14# ELF32: Name: .reginfo 15# ELF32: Type: SHT_MIPS_REGINFO (0x70000006) 16# ELF32: Flags [ (0x2) 17# ELF32: SHF_ALLOC (0x2) 18# ELF32: ] 19# ELF32: Size: 24 20# ELF32: SectionData ( 21# ELF32: 0000: 01010101 00000000 4C005515 00000000 22# ELF32: 0010: 00000000 00000000 23# ELF32: ) 24# ELF32: } 25 26# ELF64: Section { 27# ELF64: Name: .MIPS.options 28# ELF64: Type: SHT_MIPS_OPTIONS (0x7000000D) 29# ELF64: Flags [ (0x8000002) 30# ELF64: SHF_ALLOC (0x2) 31# ELF64: SHF_MIPS_NOSTRIP (0x8000000) 32# ELF64: ] 33# ELF64: Size: 40 34# ELF64: SectionData ( 35# ELF64: 0000: 01280000 00000000 01010101 00000000 36# ELF64: 0010: 00000000 4C005515 00000000 00000000 37# ELF64: 0020: 00000000 00000000 38# ELF64: ) 39# ELF64: } 40 41.text 42 add $0,$0,$0 43 add $8,$0,$0 44 add $16,$0,$0 45 add $24,$0,$0 46 47# abs.s - Reads and writes from/to $f0. 48 abs.s $f0,$f0 49# round.w.d - Reads $f4 and writes to $f2. 50 round.w.d $f2,$f4 51# ceil.w.s - Reads $f8 and writes to $f10. 52 ceil.w.s $f10, $f8 53# cvt.s.d - Reads from $f12 and writes to $f14. 54 cvt.s.d $f14, $f12 55# abs.d - Reads from $f30 and writes to $f30. 56 abs.d $f30,$f30 57 58# Read and write from/to $f26 and $f27 59 add_a.b $w26,$w26,$w26 60 add_a.b $w27,$w27,$w27 61