Skip to content

Commit 49d911a

Browse files
committed
Update testcase
1 parent df47069 commit 49d911a

File tree

1 file changed

+121
-81
lines changed

1 file changed

+121
-81
lines changed

llvm/test/CodeGen/Mips/msa/f16-llvm-ir.ll

Lines changed: 121 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -396,57 +396,103 @@ define void @uitofp(i32 %a) {
396396
; MIPS32-NEXT: jr $ra
397397
; MIPS32-NEXT: addiu $sp, $sp, 8
398398
;
399-
; MIPS64-N32-LABEL: uitofp:
400-
; MIPS64-N32: # %bb.0: # %entry
401-
; MIPS64-N32-NEXT: addiu $sp, $sp, -16
402-
; MIPS64-N32-NEXT: .cfi_def_cfa_offset 16
403-
; MIPS64-N32-NEXT: lui $1, %hi(%neg(%gp_rel(uitofp)))
404-
; MIPS64-N32-NEXT: addu $1, $1, $25
405-
; MIPS64-N32-NEXT: addiu $1, $1, %lo(%neg(%gp_rel(uitofp)))
406-
; MIPS64-N32-NEXT: lui $2, 17200
407-
; MIPS64-N32-NEXT: sw $2, 12($sp)
399+
; MIPS64R5-N32-LABEL: uitofp:
400+
; MIPS64R5-N32: # %bb.0: # %entry
401+
; MIPS64R5-N32-NEXT: addiu $sp, $sp, -16
402+
; MIPS64R5-N32-NEXT: .cfi_def_cfa_offset 16
403+
; MIPS64R5-N32-NEXT: lui $1, %hi(%neg(%gp_rel(uitofp)))
404+
; MIPS64R5-N32-NEXT: addu $1, $1, $25
405+
; MIPS64R5-N32-NEXT: addiu $1, $1, %lo(%neg(%gp_rel(uitofp)))
406+
; MIPS64R5-N32-NEXT: lui $2, 17200
407+
; MIPS64R5-N32-NEXT: sw $2, 12($sp)
408408
; MIPS64R5-N32-NEXT: sll $2, $4, 0
409409
; MIPS64R5-N32-NEXT: sw $2, 8($sp)
410-
; MIPSR6-N32-NEXT: sw $4, 8($sp)
411-
; MIPS64-N32-NEXT: lw $2, %got_page(.LCPI5_0)($1)
412-
; MIPS64-N32-NEXT: ldc1 $f0, %got_ofst(.LCPI5_0)($2)
413-
; MIPS64-N32-NEXT: ldc1 $f1, 8($sp)
414-
; MIPS64-N32-NEXT: sub.d $f0, $f1, $f0
415-
; MIPS64-N32-NEXT: dmfc1 $2, $f0
416-
; MIPS64-N32-NEXT: fill.d $w0, $2
417-
; MIPS64-N32-NEXT: fexdo.w $w0, $w0, $w0
418-
; MIPS64-N32-NEXT: fexdo.h $w0, $w0, $w0
419-
; MIPS64-N32-NEXT: lw $1, %got_disp(h)($1)
420-
; MIPS64-N32-NEXT: copy_u.h $2, $w0[0]
421-
; MIPS64-N32-NEXT: sh $2, 0($1)
422-
; MIPS64-N32-NEXT: jr $ra
423-
; MIPS64-N32-NEXT: addiu $sp, $sp, 16
410+
; MIPS64R5-N32-NEXT: lw $2, %got_page(.LCPI5_0)($1)
411+
; MIPS64R5-N32-NEXT: ldc1 $f0, %got_ofst(.LCPI5_0)($2)
412+
; MIPS64R5-N32-NEXT: ldc1 $f1, 8($sp)
413+
; MIPS64R5-N32-NEXT: sub.d $f0, $f1, $f0
414+
; MIPS64R5-N32-NEXT: dmfc1 $2, $f0
415+
; MIPS64R5-N32-NEXT: fill.d $w0, $2
416+
; MIPS64R5-N32-NEXT: fexdo.w $w0, $w0, $w0
417+
; MIPS64R5-N32-NEXT: fexdo.h $w0, $w0, $w0
418+
; MIPS64R5-N32-NEXT: lw $1, %got_disp(h)($1)
419+
; MIPS64R5-N32-NEXT: copy_u.h $2, $w0[0]
420+
; MIPS64R5-N32-NEXT: sh $2, 0($1)
421+
; MIPS64R5-N32-NEXT: jr $ra
422+
; MIPS64R5-N32-NEXT: addiu $sp, $sp, 16
424423
;
425-
; MIPS64-N64-LABEL: uitofp:
426-
; MIPS64-N64: # %bb.0: # %entry
427-
; MIPS64-N64-NEXT: daddiu $sp, $sp, -16
428-
; MIPS64-N64-NEXT: .cfi_def_cfa_offset 16
429-
; MIPS64-N64-NEXT: lui $1, %hi(%neg(%gp_rel(uitofp)))
430-
; MIPS64-N64-NEXT: daddu $1, $1, $25
431-
; MIPS64-N64-NEXT: daddiu $1, $1, %lo(%neg(%gp_rel(uitofp)))
432-
; MIPS64-N64-NEXT: lui $2, 17200
433-
; MIPS64-N64-NEXT: sw $2, 12($sp)
424+
; MIPS64R5-N64-LABEL: uitofp:
425+
; MIPS64R5-N64: # %bb.0: # %entry
426+
; MIPS64R5-N64-NEXT: daddiu $sp, $sp, -16
427+
; MIPS64R5-N64-NEXT: .cfi_def_cfa_offset 16
428+
; MIPS64R5-N64-NEXT: lui $1, %hi(%neg(%gp_rel(uitofp)))
429+
; MIPS64R5-N64-NEXT: daddu $1, $1, $25
430+
; MIPS64R5-N64-NEXT: daddiu $1, $1, %lo(%neg(%gp_rel(uitofp)))
431+
; MIPS64R5-N64-NEXT: lui $2, 17200
432+
; MIPS64R5-N64-NEXT: sw $2, 12($sp)
434433
; MIPS64R5-N64-NEXT: sll $2, $4, 0
435434
; MIPS64R5-N64-NEXT: sw $2, 8($sp)
435+
; MIPS64R5-N64-NEXT: ld $2, %got_page(.LCPI5_0)($1)
436+
; MIPS64R5-N64-NEXT: ldc1 $f0, %got_ofst(.LCPI5_0)($2)
437+
; MIPS64R5-N64-NEXT: ldc1 $f1, 8($sp)
438+
; MIPS64R5-N64-NEXT: sub.d $f0, $f1, $f0
439+
; MIPS64R5-N64-NEXT: dmfc1 $2, $f0
440+
; MIPS64R5-N64-NEXT: fill.d $w0, $2
441+
; MIPS64R5-N64-NEXT: fexdo.w $w0, $w0, $w0
442+
; MIPS64R5-N64-NEXT: fexdo.h $w0, $w0, $w0
443+
; MIPS64R5-N64-NEXT: ld $1, %got_disp(h)($1)
444+
; MIPS64R5-N64-NEXT: copy_u.h $2, $w0[0]
445+
; MIPS64R5-N64-NEXT: sh $2, 0($1)
446+
; MIPS64R5-N64-NEXT: jr $ra
447+
; MIPS64R5-N64-NEXT: daddiu $sp, $sp, 16
448+
;
449+
; MIPSR6-N32-LABEL: uitofp:
450+
; MIPSR6-N32: # %bb.0: # %entry
451+
; MIPSR6-N32-NEXT: addiu $sp, $sp, -16
452+
; MIPSR6-N32-NEXT: .cfi_def_cfa_offset 16
453+
; MIPSR6-N32-NEXT: lui $1, %hi(%neg(%gp_rel(uitofp)))
454+
; MIPSR6-N32-NEXT: addu $1, $1, $25
455+
; MIPSR6-N32-NEXT: addiu $1, $1, %lo(%neg(%gp_rel(uitofp)))
456+
; MIPSR6-N32-NEXT: lui $2, 17200
457+
; MIPSR6-N32-NEXT: sw $2, 12($sp)
458+
; MIPSR6-N32-NEXT: sw $4, 8($sp)
459+
; MIPSR6-N32-NEXT: lw $2, %got_page(.LCPI5_0)($1)
460+
; MIPSR6-N32-NEXT: ldc1 $f0, %got_ofst(.LCPI5_0)($2)
461+
; MIPSR6-N32-NEXT: ldc1 $f1, 8($sp)
462+
; MIPSR6-N32-NEXT: sub.d $f0, $f1, $f0
463+
; MIPSR6-N32-NEXT: dmfc1 $2, $f0
464+
; MIPSR6-N32-NEXT: fill.d $w0, $2
465+
; MIPSR6-N32-NEXT: fexdo.w $w0, $w0, $w0
466+
; MIPSR6-N32-NEXT: fexdo.h $w0, $w0, $w0
467+
; MIPSR6-N32-NEXT: lw $1, %got_disp(h)($1)
468+
; MIPSR6-N32-NEXT: copy_u.h $2, $w0[0]
469+
; MIPSR6-N32-NEXT: sh $2, 0($1)
470+
; MIPSR6-N32-NEXT: jr $ra
471+
; MIPSR6-N32-NEXT: addiu $sp, $sp, 16
472+
;
473+
; MIPSR6-N64-LABEL: uitofp:
474+
; MIPSR6-N64: # %bb.0: # %entry
475+
; MIPSR6-N64-NEXT: daddiu $sp, $sp, -16
476+
; MIPSR6-N64-NEXT: .cfi_def_cfa_offset 16
477+
; MIPSR6-N64-NEXT: lui $1, %hi(%neg(%gp_rel(uitofp)))
478+
; MIPSR6-N64-NEXT: daddu $1, $1, $25
479+
; MIPSR6-N64-NEXT: daddiu $1, $1, %lo(%neg(%gp_rel(uitofp)))
480+
; MIPSR6-N64-NEXT: lui $2, 17200
481+
; MIPSR6-N64-NEXT: sw $2, 12($sp)
436482
; MIPSR6-N64-NEXT: sw $4, 8($sp)
437-
; MIPS64-N64-NEXT: ld $2, %got_page(.LCPI5_0)($1)
438-
; MIPS64-N64-NEXT: ldc1 $f0, %got_ofst(.LCPI5_0)($2)
439-
; MIPS64-N64-NEXT: ldc1 $f1, 8($sp)
440-
; MIPS64-N64-NEXT: sub.d $f0, $f1, $f0
441-
; MIPS64-N64-NEXT: dmfc1 $2, $f0
442-
; MIPS64-N64-NEXT: fill.d $w0, $2
443-
; MIPS64-N64-NEXT: fexdo.w $w0, $w0, $w0
444-
; MIPS64-N64-NEXT: fexdo.h $w0, $w0, $w0
445-
; MIPS64-N64-NEXT: ld $1, %got_disp(h)($1)
446-
; MIPS64-N64-NEXT: copy_u.h $2, $w0[0]
447-
; MIPS64-N64-NEXT: sh $2, 0($1)
448-
; MIPS64-N64-NEXT: jr $ra
449-
; MIPS64-N64-NEXT: daddiu $sp, $sp, 16
483+
; MIPSR6-N64-NEXT: ld $2, %got_page(.LCPI5_0)($1)
484+
; MIPSR6-N64-NEXT: ldc1 $f0, %got_ofst(.LCPI5_0)($2)
485+
; MIPSR6-N64-NEXT: ldc1 $f1, 8($sp)
486+
; MIPSR6-N64-NEXT: sub.d $f0, $f1, $f0
487+
; MIPSR6-N64-NEXT: dmfc1 $2, $f0
488+
; MIPSR6-N64-NEXT: fill.d $w0, $2
489+
; MIPSR6-N64-NEXT: fexdo.w $w0, $w0, $w0
490+
; MIPSR6-N64-NEXT: fexdo.h $w0, $w0, $w0
491+
; MIPSR6-N64-NEXT: ld $1, %got_disp(h)($1)
492+
; MIPSR6-N64-NEXT: copy_u.h $2, $w0[0]
493+
; MIPSR6-N64-NEXT: sh $2, 0($1)
494+
; MIPSR6-N64-NEXT: jr $ra
495+
; MIPSR6-N64-NEXT: daddiu $sp, $sp, 16
450496
entry:
451497

452498

@@ -2466,14 +2512,13 @@ define void @fminnum(float %b) {
24662512
; MIPSR6-O32-NEXT: lui $2, %hi(_gp_disp)
24672513
; MIPSR6-O32-NEXT: addiu $2, $2, %lo(_gp_disp)
24682514
; MIPSR6-O32-NEXT: addu $1, $2, $25
2469-
; MIPSR6-O32-NEXT: min.s $f0, $f12, $f12
24702515
; MIPSR6-O32-NEXT: lw $1, %got(g)($1)
24712516
; MIPSR6-O32-NEXT: lh $2, 0($1)
2472-
; MIPSR6-O32-NEXT: fill.h $w1, $2
2473-
; MIPSR6-O32-NEXT: fexupr.w $w1, $w1
2474-
; MIPSR6-O32-NEXT: copy_s.w $2, $w1[0]
2475-
; MIPSR6-O32-NEXT: mtc1 $2, $f1
2476-
; MIPSR6-O32-NEXT: min.s $f0, $f1, $f0
2517+
; MIPSR6-O32-NEXT: fill.h $w0, $2
2518+
; MIPSR6-O32-NEXT: fexupr.w $w0, $w0
2519+
; MIPSR6-O32-NEXT: copy_s.w $2, $w0[0]
2520+
; MIPSR6-O32-NEXT: mtc1 $2, $f0
2521+
; MIPSR6-O32-NEXT: min.s $f0, $f0, $f12
24772522
; MIPSR6-O32-NEXT: mfc1 $2, $f0
24782523
; MIPSR6-O32-NEXT: fill.w $w0, $2
24792524
; MIPSR6-O32-NEXT: fexdo.h $w0, $w0, $w0
@@ -2486,14 +2531,13 @@ define void @fminnum(float %b) {
24862531
; MIPSR6-N32-NEXT: lui $1, %hi(%neg(%gp_rel(fminnum)))
24872532
; MIPSR6-N32-NEXT: addu $1, $1, $25
24882533
; MIPSR6-N32-NEXT: addiu $1, $1, %lo(%neg(%gp_rel(fminnum)))
2489-
; MIPSR6-N32-NEXT: min.s $f0, $f12, $f12
24902534
; MIPSR6-N32-NEXT: lw $1, %got_disp(g)($1)
24912535
; MIPSR6-N32-NEXT: lh $2, 0($1)
2492-
; MIPSR6-N32-NEXT: fill.h $w1, $2
2493-
; MIPSR6-N32-NEXT: fexupr.w $w1, $w1
2494-
; MIPSR6-N32-NEXT: copy_s.w $2, $w1[0]
2495-
; MIPSR6-N32-NEXT: mtc1 $2, $f1
2496-
; MIPSR6-N32-NEXT: min.s $f0, $f1, $f0
2536+
; MIPSR6-N32-NEXT: fill.h $w0, $2
2537+
; MIPSR6-N32-NEXT: fexupr.w $w0, $w0
2538+
; MIPSR6-N32-NEXT: copy_s.w $2, $w0[0]
2539+
; MIPSR6-N32-NEXT: mtc1 $2, $f0
2540+
; MIPSR6-N32-NEXT: min.s $f0, $f0, $f12
24972541
; MIPSR6-N32-NEXT: mfc1 $2, $f0
24982542
; MIPSR6-N32-NEXT: fill.w $w0, $2
24992543
; MIPSR6-N32-NEXT: fexdo.h $w0, $w0, $w0
@@ -2506,14 +2550,13 @@ define void @fminnum(float %b) {
25062550
; MIPSR6-N64-NEXT: lui $1, %hi(%neg(%gp_rel(fminnum)))
25072551
; MIPSR6-N64-NEXT: daddu $1, $1, $25
25082552
; MIPSR6-N64-NEXT: daddiu $1, $1, %lo(%neg(%gp_rel(fminnum)))
2509-
; MIPSR6-N64-NEXT: min.s $f0, $f12, $f12
25102553
; MIPSR6-N64-NEXT: ld $1, %got_disp(g)($1)
25112554
; MIPSR6-N64-NEXT: lh $2, 0($1)
2512-
; MIPSR6-N64-NEXT: fill.h $w1, $2
2513-
; MIPSR6-N64-NEXT: fexupr.w $w1, $w1
2514-
; MIPSR6-N64-NEXT: copy_s.w $2, $w1[0]
2515-
; MIPSR6-N64-NEXT: mtc1 $2, $f1
2516-
; MIPSR6-N64-NEXT: min.s $f0, $f1, $f0
2555+
; MIPSR6-N64-NEXT: fill.h $w0, $2
2556+
; MIPSR6-N64-NEXT: fexupr.w $w0, $w0
2557+
; MIPSR6-N64-NEXT: copy_s.w $2, $w0[0]
2558+
; MIPSR6-N64-NEXT: mtc1 $2, $f0
2559+
; MIPSR6-N64-NEXT: min.s $f0, $f0, $f12
25172560
; MIPSR6-N64-NEXT: mfc1 $2, $f0
25182561
; MIPSR6-N64-NEXT: fill.w $w0, $2
25192562
; MIPSR6-N64-NEXT: fexdo.h $w0, $w0, $w0
@@ -2638,14 +2681,13 @@ define void @fmaxnum(float %b) {
26382681
; MIPSR6-O32-NEXT: lui $2, %hi(_gp_disp)
26392682
; MIPSR6-O32-NEXT: addiu $2, $2, %lo(_gp_disp)
26402683
; MIPSR6-O32-NEXT: addu $1, $2, $25
2641-
; MIPSR6-O32-NEXT: min.s $f0, $f12, $f12
26422684
; MIPSR6-O32-NEXT: lw $1, %got(g)($1)
26432685
; MIPSR6-O32-NEXT: lh $2, 0($1)
2644-
; MIPSR6-O32-NEXT: fill.h $w1, $2
2645-
; MIPSR6-O32-NEXT: fexupr.w $w1, $w1
2646-
; MIPSR6-O32-NEXT: copy_s.w $2, $w1[0]
2647-
; MIPSR6-O32-NEXT: mtc1 $2, $f1
2648-
; MIPSR6-O32-NEXT: max.s $f0, $f1, $f0
2686+
; MIPSR6-O32-NEXT: fill.h $w0, $2
2687+
; MIPSR6-O32-NEXT: fexupr.w $w0, $w0
2688+
; MIPSR6-O32-NEXT: copy_s.w $2, $w0[0]
2689+
; MIPSR6-O32-NEXT: mtc1 $2, $f0
2690+
; MIPSR6-O32-NEXT: max.s $f0, $f0, $f12
26492691
; MIPSR6-O32-NEXT: mfc1 $2, $f0
26502692
; MIPSR6-O32-NEXT: fill.w $w0, $2
26512693
; MIPSR6-O32-NEXT: fexdo.h $w0, $w0, $w0
@@ -2658,14 +2700,13 @@ define void @fmaxnum(float %b) {
26582700
; MIPSR6-N32-NEXT: lui $1, %hi(%neg(%gp_rel(fmaxnum)))
26592701
; MIPSR6-N32-NEXT: addu $1, $1, $25
26602702
; MIPSR6-N32-NEXT: addiu $1, $1, %lo(%neg(%gp_rel(fmaxnum)))
2661-
; MIPSR6-N32-NEXT: min.s $f0, $f12, $f12
26622703
; MIPSR6-N32-NEXT: lw $1, %got_disp(g)($1)
26632704
; MIPSR6-N32-NEXT: lh $2, 0($1)
2664-
; MIPSR6-N32-NEXT: fill.h $w1, $2
2665-
; MIPSR6-N32-NEXT: fexupr.w $w1, $w1
2666-
; MIPSR6-N32-NEXT: copy_s.w $2, $w1[0]
2667-
; MIPSR6-N32-NEXT: mtc1 $2, $f1
2668-
; MIPSR6-N32-NEXT: max.s $f0, $f1, $f0
2705+
; MIPSR6-N32-NEXT: fill.h $w0, $2
2706+
; MIPSR6-N32-NEXT: fexupr.w $w0, $w0
2707+
; MIPSR6-N32-NEXT: copy_s.w $2, $w0[0]
2708+
; MIPSR6-N32-NEXT: mtc1 $2, $f0
2709+
; MIPSR6-N32-NEXT: max.s $f0, $f0, $f12
26692710
; MIPSR6-N32-NEXT: mfc1 $2, $f0
26702711
; MIPSR6-N32-NEXT: fill.w $w0, $2
26712712
; MIPSR6-N32-NEXT: fexdo.h $w0, $w0, $w0
@@ -2678,14 +2719,13 @@ define void @fmaxnum(float %b) {
26782719
; MIPSR6-N64-NEXT: lui $1, %hi(%neg(%gp_rel(fmaxnum)))
26792720
; MIPSR6-N64-NEXT: daddu $1, $1, $25
26802721
; MIPSR6-N64-NEXT: daddiu $1, $1, %lo(%neg(%gp_rel(fmaxnum)))
2681-
; MIPSR6-N64-NEXT: min.s $f0, $f12, $f12
26822722
; MIPSR6-N64-NEXT: ld $1, %got_disp(g)($1)
26832723
; MIPSR6-N64-NEXT: lh $2, 0($1)
2684-
; MIPSR6-N64-NEXT: fill.h $w1, $2
2685-
; MIPSR6-N64-NEXT: fexupr.w $w1, $w1
2686-
; MIPSR6-N64-NEXT: copy_s.w $2, $w1[0]
2687-
; MIPSR6-N64-NEXT: mtc1 $2, $f1
2688-
; MIPSR6-N64-NEXT: max.s $f0, $f1, $f0
2724+
; MIPSR6-N64-NEXT: fill.h $w0, $2
2725+
; MIPSR6-N64-NEXT: fexupr.w $w0, $w0
2726+
; MIPSR6-N64-NEXT: copy_s.w $2, $w0[0]
2727+
; MIPSR6-N64-NEXT: mtc1 $2, $f0
2728+
; MIPSR6-N64-NEXT: max.s $f0, $f0, $f12
26892729
; MIPSR6-N64-NEXT: mfc1 $2, $f0
26902730
; MIPSR6-N64-NEXT: fill.w $w0, $2
26912731
; MIPSR6-N64-NEXT: fexdo.h $w0, $w0, $w0

0 commit comments

Comments
 (0)