[clang] [CIR] Implement logical not for VectorType (PR #160762)
Amr Hesham via cfe-commits
cfe-commits at lists.llvm.org
Fri Sep 26 10:56:33 PDT 2025
=?utf-8?q?“Amr?= <amr96 at programmer.net>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/160762 at github.com>
================
@@ -1295,4 +1295,30 @@ void foo23() {
// OGCG: %[[NE_B_ZERO:.*]] = icmp ne <4 x i32> %[[TMP_B]], zeroinitializer
// OGCG: %[[VEC_OR:.*]] = and <4 x i1> %[[NE_A_ZERO]], %[[NE_B_ZERO]]
// OGCG: %[[RESULT:.*]] = sext <4 x i1> %[[VEC_OR]] to <4 x i32>
-// OGCG: store <4 x i32> %[[RESULT]], ptr %[[C_ADDR]], align 16
\ No newline at end of file
+// OGCG: store <4 x i32> %[[RESULT]], ptr %[[C_ADDR]], align 16
+
+void logical_not() {
----------------
AmrDeveloper wrote:
I found a nice bug in Vector Logical & and |, because the result type is different from the input type in the case of a vector of floats. I will create a PR to fix the implementation
https://github.com/llvm/llvm-project/pull/160762
More information about the cfe-commits
mailing list