llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-clang Author: Henrich Lauko (xlauko) <details> <summary>Changes</summary> --- Full diff: https://github.com/llvm/llvm-project/pull/187862.diff 2 Files Affected: - (modified) clang/include/clang/CIR/Dialect/IR/CIROps.td (+4) - (modified) clang/test/CIR/Transforms/bit.cir (+20) ``````````diff diff --git a/clang/include/clang/CIR/Dialect/IR/CIROps.td b/clang/include/clang/CIR/Dialect/IR/CIROps.td index 41858a61480a8..b15dc30ffb87d 100644 --- a/clang/include/clang/CIR/Dialect/IR/CIROps.td +++ b/clang/include/clang/CIR/Dialect/IR/CIROps.td @@ -5696,6 +5696,8 @@ def CIR_BitReverseOp : CIR_BitOpBase<"bitreverse", %1 = cir.bitreverse %0: !u32i ``` }]; + + let append traits = [Involution]; } def CIR_ByteSwapOp : CIR_BitOpBase<"byte_swap", @@ -5719,6 +5721,8 @@ def CIR_ByteSwapOp : CIR_BitOpBase<"byte_swap", %1 = cir.byte_swap %0 : !u32i ``` }]; + + let append traits = [Involution]; } //===----------------------------------------------------------------------===// diff --git a/clang/test/CIR/Transforms/bit.cir b/clang/test/CIR/Transforms/bit.cir index 11f47aa39e67c..c20448e74a026 100644 --- a/clang/test/CIR/Transforms/bit.cir +++ b/clang/test/CIR/Transforms/bit.cir @@ -229,4 +229,24 @@ module { // CHECK-NEXT: %[[P:.+]] = cir.const #cir.poison : !u32i // CHECK-NEXT: cir.return %[[P]] : !u32i // CHECK-NEXT: } + + cir.func @involution_bitreverse(%arg0 : !u32i) -> !u32i { + %0 = cir.bitreverse %arg0 : !u32i + %1 = cir.bitreverse %0 : !u32i + cir.return %1 : !u32i + } + // CHECK-LABEL: @involution_bitreverse + // CHECK-SAME: (%[[X:.+]]: !u32i) + // CHECK-NEXT: cir.return %[[X]] : !u32i + // CHECK-NEXT: } + + cir.func @involution_byte_swap(%arg0 : !u32i) -> !u32i { + %0 = cir.byte_swap %arg0 : !u32i + %1 = cir.byte_swap %0 : !u32i + cir.return %1 : !u32i + } + // CHECK-LABEL: @involution_byte_swap + // CHECK-SAME: (%[[X:.+]]: !u32i) + // CHECK-NEXT: cir.return %[[X]] : !u32i + // CHECK-NEXT: } } `````````` </details> https://github.com/llvm/llvm-project/pull/187862 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
