Skip to content

Commit 7b35f9b

Browse files
committed
fix sparc test
1 parent 83596b3 commit 7b35f9b

File tree

1 file changed

+59
-57
lines changed

1 file changed

+59
-57
lines changed

llvm/test/CodeGen/SPARC/fp-maximumnum-minimumnum.ll

Lines changed: 59 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -331,31 +331,35 @@ define double @maximumnum_double(double %x, double %y) {
331331
; SPARC64-NEXT: mov %g0, %o1
332332
; SPARC64-NEXT: fcmpd %fcc0, %f0, %f0
333333
; SPARC64-NEXT: fmovdu %fcc0, %f2, %f0
334-
; SPARC64-NEXT: std %f0, [%sp+2183]
334+
; SPARC64-NEXT: fdtos %f0, %f4
335+
; SPARC64-NEXT: st %f4, [%sp+2187]
335336
; SPARC64-NEXT: fcmpd %fcc0, %f2, %f2
336337
; SPARC64-NEXT: fmovdu %fcc0, %f0, %f2
337-
; SPARC64-NEXT: std %f2, [%sp+2175]
338+
; SPARC64-NEXT: fdtos %f2, %f4
339+
; SPARC64-NEXT: st %f4, [%sp+2183]
338340
; SPARC64-NEXT: fcmpd %fcc0, %f0, %f2
339341
; SPARC64-NEXT: fmovd %f2, %f4
340342
; SPARC64-NEXT: fmovdg %fcc0, %f0, %f4
341-
; SPARC64-NEXT: ldx [%sp+2183], %o2
343+
; SPARC64-NEXT: ld [%sp+2187], %o2
342344
; SPARC64-NEXT: faddd %f4, %f4, %f6
343345
; SPARC64-NEXT: fcmpd %fcc0, %f4, %f4
344346
; SPARC64-NEXT: fmovdu %fcc0, %f6, %f4
345-
; SPARC64-NEXT: movrz %o2, 1, %o0
347+
; SPARC64-NEXT: cmp %o2, 0
348+
; SPARC64-NEXT: ld [%sp+2183], %o2
349+
; SPARC64-NEXT: move %icc, 1, %o0
346350
; SPARC64-NEXT: cmp %o0, 0
347-
; SPARC64-NEXT: ldx [%sp+2175], %o0
348-
; SPARC64-NEXT: sethi %h44(.LCPI3_0), %o2
349-
; SPARC64-NEXT: add %o2, %m44(.LCPI3_0), %o2
350-
; SPARC64-NEXT: sllx %o2, 12, %o2
351-
; SPARC64-NEXT: ldd [%o2+%l44(.LCPI3_0)], %f6
352-
; SPARC64-NEXT: fmovd %f4, %f8
353-
; SPARC64-NEXT: fmovdne %icc, %f0, %f8
354-
; SPARC64-NEXT: movrz %o0, 1, %o1
351+
; SPARC64-NEXT: fmovd %f4, %f6
352+
; SPARC64-NEXT: fmovdne %icc, %f0, %f6
353+
; SPARC64-NEXT: cmp %o2, 0
354+
; SPARC64-NEXT: sethi %h44(.LCPI3_0), %o0
355+
; SPARC64-NEXT: add %o0, %m44(.LCPI3_0), %o0
356+
; SPARC64-NEXT: sllx %o0, 12, %o0
357+
; SPARC64-NEXT: ldd [%o0+%l44(.LCPI3_0)], %f0
358+
; SPARC64-NEXT: move %icc, 1, %o1
355359
; SPARC64-NEXT: cmp %o1, 0
356-
; SPARC64-NEXT: fmovdne %icc, %f2, %f8
357-
; SPARC64-NEXT: fcmpd %fcc0, %f4, %f6
358-
; SPARC64-NEXT: fmovde %fcc0, %f8, %f4
360+
; SPARC64-NEXT: fmovdne %icc, %f2, %f6
361+
; SPARC64-NEXT: fcmpd %fcc0, %f4, %f0
362+
; SPARC64-NEXT: fmovde %fcc0, %f6, %f4
359363
; SPARC64-NEXT: fmovd %f4, %f0
360364
; SPARC64-NEXT: retl
361365
; SPARC64-NEXT: add %sp, 144, %sp
@@ -554,24 +558,28 @@ define double @maximumnum_double_nnan(double %x, double %y) {
554558
; SPARC64-NEXT: .cfi_def_cfa_register %fp
555559
; SPARC64-NEXT: .cfi_window_save
556560
; SPARC64-NEXT: .cfi_register %o7, %i7
557-
; SPARC64-NEXT: std %f2, [%sp+2175]
558-
; SPARC64-NEXT: std %f0, [%sp+2183]
559-
; SPARC64-NEXT: ldx [%sp+2183], %o0
561+
; SPARC64-NEXT: fdtos %f0, %f4
562+
; SPARC64-NEXT: st %f4, [%sp+2187]
563+
; SPARC64-NEXT: fdtos %f2, %f4
564+
; SPARC64-NEXT: st %f4, [%sp+2183]
565+
; SPARC64-NEXT: ld [%sp+2187], %o0
560566
; SPARC64-NEXT: mov %g0, %o1
561567
; SPARC64-NEXT: mov %g0, %o2
562-
; SPARC64-NEXT: movrz %o0, 1, %o1
563-
; SPARC64-NEXT: ldx [%sp+2175], %o0
564568
; SPARC64-NEXT: fcmpd %fcc0, %f0, %f2
565569
; SPARC64-NEXT: fmovd %f2, %f4
566570
; SPARC64-NEXT: fmovdg %fcc0, %f0, %f4
571+
; SPARC64-NEXT: cmp %o0, 0
572+
; SPARC64-NEXT: ld [%sp+2183], %o0
573+
; SPARC64-NEXT: move %icc, 1, %o1
567574
; SPARC64-NEXT: cmp %o1, 0
568575
; SPARC64-NEXT: fmovd %f4, %f6
569576
; SPARC64-NEXT: fmovdne %icc, %f0, %f6
570-
; SPARC64-NEXT: sethi %h44(.LCPI5_0), %o1
571-
; SPARC64-NEXT: add %o1, %m44(.LCPI5_0), %o1
572-
; SPARC64-NEXT: sllx %o1, 12, %o1
573-
; SPARC64-NEXT: ldd [%o1+%l44(.LCPI5_0)], %f0
574-
; SPARC64-NEXT: movrz %o0, 1, %o2
577+
; SPARC64-NEXT: cmp %o0, 0
578+
; SPARC64-NEXT: sethi %h44(.LCPI5_0), %o0
579+
; SPARC64-NEXT: add %o0, %m44(.LCPI5_0), %o0
580+
; SPARC64-NEXT: sllx %o0, 12, %o0
581+
; SPARC64-NEXT: ldd [%o0+%l44(.LCPI5_0)], %f0
582+
; SPARC64-NEXT: move %icc, 1, %o2
575583
; SPARC64-NEXT: cmp %o2, 0
576584
; SPARC64-NEXT: fmovdne %icc, %f2, %f6
577585
; SPARC64-NEXT: fcmpd %fcc0, %f4, %f0
@@ -997,35 +1005,32 @@ define double @minimumnum_double(double %x, double %y) {
9971005
; SPARC64-NEXT: mov %g0, %o1
9981006
; SPARC64-NEXT: fcmpd %fcc0, %f0, %f0
9991007
; SPARC64-NEXT: fmovdu %fcc0, %f2, %f0
1000-
; SPARC64-NEXT: std %f0, [%sp+2183]
1008+
; SPARC64-NEXT: fdtos %f0, %f4
1009+
; SPARC64-NEXT: st %f4, [%sp+2187]
10011010
; SPARC64-NEXT: fcmpd %fcc0, %f2, %f2
10021011
; SPARC64-NEXT: fmovdu %fcc0, %f0, %f2
1003-
; SPARC64-NEXT: std %f2, [%sp+2175]
1012+
; SPARC64-NEXT: fdtos %f2, %f4
1013+
; SPARC64-NEXT: st %f4, [%sp+2183]
10041014
; SPARC64-NEXT: fcmpd %fcc0, %f0, %f2
10051015
; SPARC64-NEXT: fmovd %f2, %f4
10061016
; SPARC64-NEXT: fmovdl %fcc0, %f0, %f4
1007-
; SPARC64-NEXT: sethi 0, %o2
1008-
; SPARC64-NEXT: or %o2, 0, %o2
1009-
; SPARC64-NEXT: sethi 2097152, %o3
1010-
; SPARC64-NEXT: or %o3, 0, %o3
1011-
; SPARC64-NEXT: sllx %o3, 32, %o3
1012-
; SPARC64-NEXT: or %o3, %o2, %o2
1013-
; SPARC64-NEXT: ldx [%sp+2183], %o3
10141017
; SPARC64-NEXT: faddd %f4, %f4, %f6
1018+
; SPARC64-NEXT: ld [%sp+2187], %o2
10151019
; SPARC64-NEXT: fcmpd %fcc0, %f4, %f4
10161020
; SPARC64-NEXT: fmovdu %fcc0, %f6, %f4
1017-
; SPARC64-NEXT: cmp %o3, %o2
1018-
; SPARC64-NEXT: ldx [%sp+2175], %o3
1019-
; SPARC64-NEXT: move %xcc, 1, %o0
1021+
; SPARC64-NEXT: sethi 2097152, %o3
1022+
; SPARC64-NEXT: cmp %o2, %o3
1023+
; SPARC64-NEXT: ld [%sp+2183], %o2
1024+
; SPARC64-NEXT: move %icc, 1, %o0
10201025
; SPARC64-NEXT: cmp %o0, 0
10211026
; SPARC64-NEXT: fmovd %f4, %f6
10221027
; SPARC64-NEXT: fmovdne %icc, %f0, %f6
1023-
; SPARC64-NEXT: cmp %o3, %o2
1028+
; SPARC64-NEXT: cmp %o2, %o3
10241029
; SPARC64-NEXT: sethi %h44(.LCPI9_0), %o0
10251030
; SPARC64-NEXT: add %o0, %m44(.LCPI9_0), %o0
10261031
; SPARC64-NEXT: sllx %o0, 12, %o0
10271032
; SPARC64-NEXT: ldd [%o0+%l44(.LCPI9_0)], %f0
1028-
; SPARC64-NEXT: move %xcc, 1, %o1
1033+
; SPARC64-NEXT: move %icc, 1, %o1
10291034
; SPARC64-NEXT: cmp %o1, 0
10301035
; SPARC64-NEXT: fmovdne %icc, %f2, %f6
10311036
; SPARC64-NEXT: fcmpd %fcc0, %f4, %f0
@@ -1237,35 +1242,32 @@ define double @minimumnum_double_nnan(double %x, double %y) {
12371242
; SPARC64-NEXT: .cfi_def_cfa_register %fp
12381243
; SPARC64-NEXT: .cfi_window_save
12391244
; SPARC64-NEXT: .cfi_register %o7, %i7
1240-
; SPARC64-NEXT: mov %g0, %o0
1245+
; SPARC64-NEXT: fdtos %f2, %f4
1246+
; SPARC64-NEXT: st %f4, [%sp+2183]
1247+
; SPARC64-NEXT: fdtos %f0, %f4
1248+
; SPARC64-NEXT: st %f4, [%sp+2187]
1249+
; SPARC64-NEXT: ld [%sp+2183], %o0
12411250
; SPARC64-NEXT: mov %g0, %o1
1242-
; SPARC64-NEXT: std %f2, [%sp+2175]
1243-
; SPARC64-NEXT: std %f0, [%sp+2183]
1244-
; SPARC64-NEXT: ldx [%sp+2183], %o2
1245-
; SPARC64-NEXT: sethi 0, %o3
1246-
; SPARC64-NEXT: or %o3, 0, %o3
1251+
; SPARC64-NEXT: mov %g0, %o2
1252+
; SPARC64-NEXT: ld [%sp+2187], %o3
12471253
; SPARC64-NEXT: sethi 2097152, %o4
1248-
; SPARC64-NEXT: or %o4, 0, %o4
1249-
; SPARC64-NEXT: sllx %o4, 32, %o4
1250-
; SPARC64-NEXT: or %o4, %o3, %o3
1251-
; SPARC64-NEXT: cmp %o2, %o3
1252-
; SPARC64-NEXT: ldx [%sp+2175], %o2
1253-
; SPARC64-NEXT: move %xcc, 1, %o0
1254+
; SPARC64-NEXT: cmp %o0, %o4
1255+
; SPARC64-NEXT: move %icc, 1, %o1
1256+
; SPARC64-NEXT: cmp %o3, %o4
1257+
; SPARC64-NEXT: move %icc, 1, %o2
12541258
; SPARC64-NEXT: fcmpd %fcc0, %f0, %f2
12551259
; SPARC64-NEXT: fmovd %f2, %f4
12561260
; SPARC64-NEXT: fmovdl %fcc0, %f0, %f4
1257-
; SPARC64-NEXT: cmp %o0, 0
1261+
; SPARC64-NEXT: cmp %o2, 0
12581262
; SPARC64-NEXT: fmovd %f4, %f6
1259-
; SPARC64-NEXT: fmovdne %icc, %f0, %f6
1260-
; SPARC64-NEXT: cmp %o2, %o3
12611263
; SPARC64-NEXT: sethi %h44(.LCPI11_0), %o0
12621264
; SPARC64-NEXT: add %o0, %m44(.LCPI11_0), %o0
12631265
; SPARC64-NEXT: sllx %o0, 12, %o0
1264-
; SPARC64-NEXT: ldd [%o0+%l44(.LCPI11_0)], %f0
1265-
; SPARC64-NEXT: move %xcc, 1, %o1
1266+
; SPARC64-NEXT: ldd [%o0+%l44(.LCPI11_0)], %f8
1267+
; SPARC64-NEXT: fmovdne %icc, %f0, %f6
12661268
; SPARC64-NEXT: cmp %o1, 0
12671269
; SPARC64-NEXT: fmovdne %icc, %f2, %f6
1268-
; SPARC64-NEXT: fcmpd %fcc0, %f4, %f0
1270+
; SPARC64-NEXT: fcmpd %fcc0, %f4, %f8
12691271
; SPARC64-NEXT: fmovde %fcc0, %f6, %f4
12701272
; SPARC64-NEXT: fmovd %f4, %f0
12711273
; SPARC64-NEXT: retl

0 commit comments

Comments
 (0)