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