Skip to content

Commit 7afdc6b

Browse files
committed
[DAG] Fix typo in i64/i128 abdu/abds tests
I'd incorrectly swapped the operands in some of the "cmp" test patterns when I changed the condition code
1 parent cd46829 commit 7afdc6b

File tree

12 files changed

+738
-764
lines changed

12 files changed

+738
-764
lines changed

llvm/test/CodeGen/AArch64/abds-neg.ll

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -377,30 +377,31 @@ define i64 @abd_cmp_i64(i64 %a, i64 %b) nounwind {
377377
; CHECK: // %bb.0:
378378
; CHECK-NEXT: sub x8, x1, x0
379379
; CHECK-NEXT: subs x9, x0, x1
380-
; CHECK-NEXT: csel x0, x9, x8, gt
380+
; CHECK-NEXT: csel x0, x9, x8, lt
381381
; CHECK-NEXT: ret
382382
%cmp = icmp slt i64 %a, %b
383383
%ab = sub i64 %a, %b
384384
%ba = sub i64 %b, %a
385-
%sel = select i1 %cmp, i64 %ba, i64 %ab
385+
%sel = select i1 %cmp, i64 %ab, i64 %ba
386386
ret i64 %sel
387387
}
388388

389389
define i128 @abd_cmp_i128(i128 %a, i128 %b) nounwind {
390390
; CHECK-LABEL: abd_cmp_i128:
391391
; CHECK: // %bb.0:
392-
; CHECK-NEXT: subs x8, x0, x2
393-
; CHECK-NEXT: sbc x9, x1, x3
394-
; CHECK-NEXT: subs x10, x2, x0
395-
; CHECK-NEXT: sbc x11, x3, x1
396-
; CHECK-NEXT: sbcs xzr, x3, x1
397-
; CHECK-NEXT: csel x0, x8, x10, lt
398-
; CHECK-NEXT: csel x1, x9, x11, lt
392+
; CHECK-NEXT: cmp x0, x2
393+
; CHECK-NEXT: sbc x8, x1, x3
394+
; CHECK-NEXT: subs x9, x2, x0
395+
; CHECK-NEXT: sbc x10, x3, x1
396+
; CHECK-NEXT: subs x11, x0, x2
397+
; CHECK-NEXT: sbcs xzr, x1, x3
398+
; CHECK-NEXT: csel x0, x11, x9, lt
399+
; CHECK-NEXT: csel x1, x8, x10, lt
399400
; CHECK-NEXT: ret
400401
%cmp = icmp slt i128 %a, %b
401402
%ab = sub i128 %a, %b
402403
%ba = sub i128 %b, %a
403-
%sel = select i1 %cmp, i128 %ba, i128 %ab
404+
%sel = select i1 %cmp, i128 %ab, i128 %ba
404405
ret i128 %sel
405406
}
406407

llvm/test/CodeGen/AArch64/abds.ll

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -343,31 +343,30 @@ define i64 @abd_cmp_i64(i64 %a, i64 %b) nounwind {
343343
; CHECK: // %bb.0:
344344
; CHECK-NEXT: sub x8, x1, x0
345345
; CHECK-NEXT: subs x9, x0, x1
346-
; CHECK-NEXT: csel x0, x8, x9, ge
346+
; CHECK-NEXT: csel x0, x9, x8, gt
347347
; CHECK-NEXT: ret
348348
%cmp = icmp sge i64 %a, %b
349349
%ab = sub i64 %a, %b
350350
%ba = sub i64 %b, %a
351-
%sel = select i1 %cmp, i64 %ba, i64 %ab
351+
%sel = select i1 %cmp, i64 %ab, i64 %ba
352352
ret i64 %sel
353353
}
354354

355355
define i128 @abd_cmp_i128(i128 %a, i128 %b) nounwind {
356356
; CHECK-LABEL: abd_cmp_i128:
357357
; CHECK: // %bb.0:
358-
; CHECK-NEXT: cmp x0, x2
359-
; CHECK-NEXT: sbc x8, x1, x3
360-
; CHECK-NEXT: subs x9, x2, x0
361-
; CHECK-NEXT: sbc x10, x3, x1
362-
; CHECK-NEXT: subs x11, x0, x2
363-
; CHECK-NEXT: sbcs xzr, x1, x3
364-
; CHECK-NEXT: csel x0, x9, x11, ge
365-
; CHECK-NEXT: csel x1, x10, x8, ge
358+
; CHECK-NEXT: subs x8, x0, x2
359+
; CHECK-NEXT: sbc x9, x1, x3
360+
; CHECK-NEXT: subs x10, x2, x0
361+
; CHECK-NEXT: sbc x11, x3, x1
362+
; CHECK-NEXT: sbcs xzr, x3, x1
363+
; CHECK-NEXT: csel x0, x8, x10, lt
364+
; CHECK-NEXT: csel x1, x9, x11, lt
366365
; CHECK-NEXT: ret
367366
%cmp = icmp sge i128 %a, %b
368367
%ab = sub i128 %a, %b
369368
%ba = sub i128 %b, %a
370-
%sel = select i1 %cmp, i128 %ba, i128 %ab
369+
%sel = select i1 %cmp, i128 %ab, i128 %ba
371370
ret i128 %sel
372371
}
373372

llvm/test/CodeGen/AArch64/abdu-neg.ll

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -379,31 +379,31 @@ define i64 @abd_cmp_i64(i64 %a, i64 %b) nounwind {
379379
; CHECK: // %bb.0:
380380
; CHECK-NEXT: sub x8, x1, x0
381381
; CHECK-NEXT: subs x9, x0, x1
382-
; CHECK-NEXT: csel x0, x9, x8, hi
382+
; CHECK-NEXT: csel x0, x9, x8, lo
383383
; CHECK-NEXT: ret
384384
%cmp = icmp ult i64 %a, %b
385385
%ab = sub i64 %a, %b
386386
%ba = sub i64 %b, %a
387-
%sel = select i1 %cmp, i64 %ba, i64 %ab
387+
%sel = select i1 %cmp, i64 %ab, i64 %ba
388388
ret i64 %sel
389389
}
390390

391391
define i128 @abd_cmp_i128(i128 %a, i128 %b) nounwind {
392392
; CHECK-LABEL: abd_cmp_i128:
393393
; CHECK: // %bb.0:
394-
; CHECK-NEXT: subs x8, x0, x2
395-
; CHECK-NEXT: sbcs x9, x1, x3
396-
; CHECK-NEXT: cset w10, lo
397-
; CHECK-NEXT: sbfx x10, x10, #0, #1
398-
; CHECK-NEXT: eor x8, x8, x10
399-
; CHECK-NEXT: eor x9, x9, x10
400-
; CHECK-NEXT: subs x0, x8, x10
401-
; CHECK-NEXT: sbc x1, x9, x10
394+
; CHECK-NEXT: cmp x0, x2
395+
; CHECK-NEXT: sbc x8, x1, x3
396+
; CHECK-NEXT: subs x9, x2, x0
397+
; CHECK-NEXT: sbc x10, x3, x1
398+
; CHECK-NEXT: subs x11, x0, x2
399+
; CHECK-NEXT: sbcs xzr, x1, x3
400+
; CHECK-NEXT: csel x0, x11, x9, lo
401+
; CHECK-NEXT: csel x1, x8, x10, lo
402402
; CHECK-NEXT: ret
403403
%cmp = icmp ult i128 %a, %b
404404
%ab = sub i128 %a, %b
405405
%ba = sub i128 %b, %a
406-
%sel = select i1 %cmp, i128 %ba, i128 %ab
406+
%sel = select i1 %cmp, i128 %ab, i128 %ba
407407
ret i128 %sel
408408
}
409409

llvm/test/CodeGen/AArch64/abdu.ll

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -346,31 +346,31 @@ define i64 @abd_cmp_i64(i64 %a, i64 %b) nounwind {
346346
; CHECK: // %bb.0:
347347
; CHECK-NEXT: sub x8, x1, x0
348348
; CHECK-NEXT: subs x9, x0, x1
349-
; CHECK-NEXT: csel x0, x8, x9, hs
349+
; CHECK-NEXT: csel x0, x9, x8, hi
350350
; CHECK-NEXT: ret
351351
%cmp = icmp uge i64 %a, %b
352352
%ab = sub i64 %a, %b
353353
%ba = sub i64 %b, %a
354-
%sel = select i1 %cmp, i64 %ba, i64 %ab
354+
%sel = select i1 %cmp, i64 %ab, i64 %ba
355355
ret i64 %sel
356356
}
357357

358358
define i128 @abd_cmp_i128(i128 %a, i128 %b) nounwind {
359359
; CHECK-LABEL: abd_cmp_i128:
360360
; CHECK: // %bb.0:
361-
; CHECK-NEXT: cmp x0, x2
362-
; CHECK-NEXT: sbc x8, x1, x3
363-
; CHECK-NEXT: subs x9, x2, x0
364-
; CHECK-NEXT: sbc x10, x3, x1
365-
; CHECK-NEXT: subs x11, x0, x2
366-
; CHECK-NEXT: sbcs xzr, x1, x3
367-
; CHECK-NEXT: csel x0, x9, x11, hs
368-
; CHECK-NEXT: csel x1, x10, x8, hs
361+
; CHECK-NEXT: subs x8, x0, x2
362+
; CHECK-NEXT: sbcs x9, x1, x3
363+
; CHECK-NEXT: cset w10, lo
364+
; CHECK-NEXT: sbfx x10, x10, #0, #1
365+
; CHECK-NEXT: eor x8, x8, x10
366+
; CHECK-NEXT: eor x9, x9, x10
367+
; CHECK-NEXT: subs x0, x8, x10
368+
; CHECK-NEXT: sbc x1, x9, x10
369369
; CHECK-NEXT: ret
370370
%cmp = icmp uge i128 %a, %b
371371
%ab = sub i128 %a, %b
372372
%ba = sub i128 %b, %a
373-
%sel = select i1 %cmp, i128 %ba, i128 %ab
373+
%sel = select i1 %cmp, i128 %ab, i128 %ba
374374
ret i128 %sel
375375
}
376376

0 commit comments

Comments
 (0)