1; RUN: llc -march=mips -mattr=+o32,+fp64 < %s | FileCheck --check-prefix=O32-FP64-INV %s
2; RUN: llc -march=mipsel -mattr=+o32,+fp64 < %s | FileCheck --check-prefix=O32-FP64-INV %s
3
4; RUN: llc -march=mips -mattr=+o32,+fpxx < %s | FileCheck --check-prefix=O32-FPXX %s
5; RUN: llc -march=mipsel -mattr=+o32,+fpxx < %s | FileCheck --check-prefix=O32-FPXX %s
6
7; RUN-TODO: llc -march=mips64 -mattr=+o32,+fpxx < %s | FileCheck --check-prefix=O32-FPXX %s
8; RUN-TODO: llc -march=mips64el -mattr=+o32,+fpxx < %s | FileCheck --check-prefix=O32-FPXX %s
9
10define void @fpu_clobber() nounwind {
11entry:
12    call void asm "# Clobber", "~{$f21}"()
13    ret void
14}
15
16; O32-FPXX-LABEL: fpu_clobber:
17
18; O32-FPXX:           addiu $sp, $sp, -8
19
20; O32-FP64-INV-NOT:   sdc1 $f20,
21; O32-FPXX-DAG:       sdc1 [[F20:\$f20]], [[OFF20:[0-9]+]]($sp)
22; O32-FPXX-DAG:       ldc1 [[F20]], [[OFF20]]($sp)
23
24; O32-FPXX:           addiu $sp, $sp, 8
25