@@ -493,10 +493,10 @@ define { fp128, i32 } @test_frexp_fp128_i32(fp128 %a) nounwind {
493
493
; SOFT-FLOAT-64: # %bb.0:
494
494
; SOFT-FLOAT-64-NEXT: daddiu $sp, $sp, -16
495
495
; SOFT-FLOAT-64-NEXT: sd $ra, 8($sp) # 8-byte Folded Spill
496
- ; SOFT-FLOAT-64-NEXT: dmfc1 $4, $f12
497
- ; SOFT-FLOAT-64-NEXT: dmfc1 $5, $f13
498
496
; SOFT-FLOAT-64-NEXT: jal frexpl
499
497
; SOFT-FLOAT-64-NEXT: daddiu $6, $sp, 4
498
+ ; SOFT-FLOAT-64-NEXT: dmfc1 $2, $f0
499
+ ; SOFT-FLOAT-64-NEXT: dmfc1 $3, $f2
500
500
; SOFT-FLOAT-64-NEXT: lw $4, 4($sp)
501
501
; SOFT-FLOAT-64-NEXT: ld $ra, 8($sp) # 8-byte Folded Reload
502
502
; SOFT-FLOAT-64-NEXT: jr $ra
@@ -597,39 +597,39 @@ define { <2 x fp128>, <2 x i32> } @test_frexp_v2fp128_v2i32(<2 x fp128> %a) noun
597
597
; SOFT-FLOAT-64-LABEL: test_frexp_v2fp128_v2i32:
598
598
; SOFT-FLOAT-64: # %bb.0:
599
599
; SOFT-FLOAT-64-NEXT: daddiu $sp, $sp, -64
600
- ; SOFT-FLOAT-64-NEXT: sd $ra , 56($sp) # 8-byte Folded Spill
601
- ; SOFT-FLOAT-64-NEXT: sd $20 , 48($sp) # 8-byte Folded Spill
602
- ; SOFT-FLOAT-64-NEXT: sd $19 , 40($sp) # 8-byte Folded Spill
600
+ ; SOFT-FLOAT-64-NEXT: sdc1 $f25 , 56($sp) # 8-byte Folded Spill
601
+ ; SOFT-FLOAT-64-NEXT: sdc1 $f24 , 48($sp) # 8-byte Folded Spill
602
+ ; SOFT-FLOAT-64-NEXT: sd $ra , 40($sp) # 8-byte Folded Spill
603
603
; SOFT-FLOAT-64-NEXT: sd $18, 32($sp) # 8-byte Folded Spill
604
604
; SOFT-FLOAT-64-NEXT: sd $17, 24($sp) # 8-byte Folded Spill
605
605
; SOFT-FLOAT-64-NEXT: sd $16, 16($sp) # 8-byte Folded Spill
606
606
; SOFT-FLOAT-64-NEXT: move $16, $6
607
607
; SOFT-FLOAT-64-NEXT: move $17, $5
608
608
; SOFT-FLOAT-64-NEXT: move $18, $4
609
- ; SOFT-FLOAT-64-NEXT: daddiu $6 , $sp, 12
610
- ; SOFT-FLOAT-64-NEXT: move $4 , $7
609
+ ; SOFT-FLOAT-64-NEXT: dmtc1 $7 , $f12
610
+ ; SOFT-FLOAT-64-NEXT: dmtc1 $8 , $f13
611
611
; SOFT-FLOAT-64-NEXT: jal frexpl
612
- ; SOFT-FLOAT-64-NEXT: move $5, $8
613
- ; SOFT-FLOAT-64-NEXT: move $19, $2
614
- ; SOFT-FLOAT-64-NEXT: move $20, $3
612
+ ; SOFT-FLOAT-64-NEXT: daddiu $6, $sp, 12
613
+ ; SOFT-FLOAT-64-NEXT: mov.d $f24, $f0
614
+ ; SOFT-FLOAT-64-NEXT: mov.d $f25, $f2
615
+ ; SOFT-FLOAT-64-NEXT: dmtc1 $17, $f12
616
+ ; SOFT-FLOAT-64-NEXT: dmtc1 $16, $f13
615
617
; SOFT-FLOAT-64-NEXT: daddiu $6, $sp, 8
616
618
; SOFT-FLOAT-64-NEXT: lw $1, 12($sp)
617
- ; SOFT-FLOAT-64-NEXT: sw $1, 36($18)
618
- ; SOFT-FLOAT-64-NEXT: move $4, $17
619
619
; SOFT-FLOAT-64-NEXT: jal frexpl
620
- ; SOFT-FLOAT-64-NEXT: move $5, $16
620
+ ; SOFT-FLOAT-64-NEXT: sw $1, 36($18)
621
621
; SOFT-FLOAT-64-NEXT: lw $1, 8($sp)
622
622
; SOFT-FLOAT-64-NEXT: sw $1, 32($18)
623
- ; SOFT-FLOAT-64-NEXT: sd $20 , 24($18)
624
- ; SOFT-FLOAT-64-NEXT: sd $19 , 16($18)
625
- ; SOFT-FLOAT-64-NEXT: sd $3 , 8($18)
626
- ; SOFT-FLOAT-64-NEXT: sd $2 , 0($18)
623
+ ; SOFT-FLOAT-64-NEXT: sdc1 $f25 , 24($18)
624
+ ; SOFT-FLOAT-64-NEXT: sdc1 $f24 , 16($18)
625
+ ; SOFT-FLOAT-64-NEXT: sdc1 $f2 , 8($18)
626
+ ; SOFT-FLOAT-64-NEXT: sdc1 $f0 , 0($18)
627
627
; SOFT-FLOAT-64-NEXT: ld $16, 16($sp) # 8-byte Folded Reload
628
628
; SOFT-FLOAT-64-NEXT: ld $17, 24($sp) # 8-byte Folded Reload
629
629
; SOFT-FLOAT-64-NEXT: ld $18, 32($sp) # 8-byte Folded Reload
630
- ; SOFT-FLOAT-64-NEXT: ld $19 , 40($sp) # 8-byte Folded Reload
631
- ; SOFT-FLOAT-64-NEXT: ld $20 , 48($sp) # 8-byte Folded Reload
632
- ; SOFT-FLOAT-64-NEXT: ld $ra , 56($sp) # 8-byte Folded Reload
630
+ ; SOFT-FLOAT-64-NEXT: ld $ra , 40($sp) # 8-byte Folded Reload
631
+ ; SOFT-FLOAT-64-NEXT: ldc1 $f24 , 48($sp) # 8-byte Folded Reload
632
+ ; SOFT-FLOAT-64-NEXT: ldc1 $f25 , 56($sp) # 8-byte Folded Reload
633
633
; SOFT-FLOAT-64-NEXT: jr $ra
634
634
; SOFT-FLOAT-64-NEXT: daddiu $sp, $sp, 64
635
635
%result = call { <2 x fp128 >, <2 x i32 > } @llvm.frexp.v2fp128.v2i32 (<2 x fp128 > %a )
0 commit comments