[PowerPC] Regenerate rotate tests
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Sun, 15 Mar 2020 18:29:00 +0000 (18:29 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Sun, 15 Mar 2020 18:29:00 +0000 (18:29 +0000)
llvm/test/CodeGen/PowerPC/rotl-2.ll

index 43d34f6..1b24b87 100644 (file)
@@ -1,9 +1,12 @@
-; RUN: llc -verify-machineinstrs < %s -mtriple=ppc32--  | grep rotlwi | count 2
-; RUN: llc -verify-machineinstrs < %s -mtriple=ppc32--  | grep clrlwi | count 2
-; RUN: llc -verify-machineinstrs < %s -mtriple=ppc32--  | grep rotlw | count 4
-; RUN: llc -verify-machineinstrs < %s -mtriple=ppc32--  | not grep or
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc -verify-machineinstrs < %s -mtriple=ppc32-- | FileCheck %s
 
 define i32 @rotl32(i32 %A, i8 %Amt) nounwind {
+; CHECK-LABEL: rotl32:
+; CHECK:       # %bb.0:
+; CHECK-NEXT:    clrlwi 4, 4, 24
+; CHECK-NEXT:    rotlw 3, 3, 4
+; CHECK-NEXT:    blr
        %shift.upgrd.1 = zext i8 %Amt to i32            ; <i32> [#uses=1]
        %B = shl i32 %A, %shift.upgrd.1         ; <i32> [#uses=1]
        %Amt2 = sub i8 32, %Amt         ; <i8> [#uses=1]
@@ -14,6 +17,12 @@ define i32 @rotl32(i32 %A, i8 %Amt) nounwind {
 }
 
 define i32 @rotr32(i32 %A, i8 %Amt) nounwind {
+; CHECK-LABEL: rotr32:
+; CHECK:       # %bb.0:
+; CHECK-NEXT:    subfic 4, 4, 32
+; CHECK-NEXT:    clrlwi 4, 4, 24
+; CHECK-NEXT:    rotlw 3, 3, 4
+; CHECK-NEXT:    blr
        %shift.upgrd.3 = zext i8 %Amt to i32            ; <i32> [#uses=1]
        %B = lshr i32 %A, %shift.upgrd.3                ; <i32> [#uses=1]
        %Amt2 = sub i8 32, %Amt         ; <i8> [#uses=1]
@@ -24,6 +33,10 @@ define i32 @rotr32(i32 %A, i8 %Amt) nounwind {
 }
 
 define i32 @rotli32(i32 %A) nounwind {
+; CHECK-LABEL: rotli32:
+; CHECK:       # %bb.0:
+; CHECK-NEXT:    rotlwi 3, 3, 5
+; CHECK-NEXT:    blr
        %B = shl i32 %A, 5              ; <i32> [#uses=1]
        %C = lshr i32 %A, 27            ; <i32> [#uses=1]
        %D = or i32 %B, %C              ; <i32> [#uses=1]
@@ -31,6 +44,10 @@ define i32 @rotli32(i32 %A) nounwind {
 }
 
 define i32 @rotri32(i32 %A) nounwind {
+; CHECK-LABEL: rotri32:
+; CHECK:       # %bb.0:
+; CHECK-NEXT:    rotlwi 3, 3, 27
+; CHECK-NEXT:    blr
        %B = lshr i32 %A, 5             ; <i32> [#uses=1]
        %C = shl i32 %A, 27             ; <i32> [#uses=1]
        %D = or i32 %B, %C              ; <i32> [#uses=1]