Author: Nikita Popov
Date: 2020-12-12T00:04:10+01:00
New Revision: 8d4b139e9dceb43aa91d0451f5458fd05a9fba33
URL:
https://github.com/llvm/llvm-project/commit/8d4b139e9dceb43aa91d0451f5458fd05a9fba33
DIFF:
https://github.com/llvm/llvm-project/commit/8d4b139e9dceb43aa91d0451f5458fd05a9fba33.diff
Author: Juneyoung Lee
Date: 2021-05-13T16:04:12+02:00
New Revision: 395607af3cb80f25ee05420ea5ae0ad0be948533
URL:
https://github.com/llvm/llvm-project/commit/395607af3cb80f25ee05420ea5ae0ad0be948533
DIFF:
https://github.com/llvm/llvm-project/commit/395607af3cb80f25ee05420ea5ae0ad0be948533.diff
Author: Nikita Popov
Date: 2021-05-16T15:46:31+02:00
New Revision: 656296b1c2eca127cb48612227fa5f381c81b53b
URL:
https://github.com/llvm/llvm-project/commit/656296b1c2eca127cb48612227fa5f381c81b53b
DIFF:
https://github.com/llvm/llvm-project/commit/656296b1c2eca127cb48612227fa5f381c81b53b.diff
Author: Nikita Popov
Date: 2021-01-21T20:29:33+01:00
New Revision: 65fd034b95d69fa0e634861ee165b502ceb92a12
URL:
https://github.com/llvm/llvm-project/commit/65fd034b95d69fa0e634861ee165b502ceb92a12
DIFF:
https://github.com/llvm/llvm-project/commit/65fd034b95d69fa0e634861ee165b502ceb92a12.diff
Author: Nikita Popov
Date: 2021-02-19T18:06:25+01:00
New Revision: 71a8e4e7d6b947c8b954ec0763ff7969b3879d7b
URL:
https://github.com/llvm/llvm-project/commit/71a8e4e7d6b947c8b954ec0763ff7969b3879d7b
DIFF:
https://github.com/llvm/llvm-project/commit/71a8e4e7d6b947c8b954ec0763ff7969b3879d7b.diff
Author: Nikita Popov
Date: 2021-06-03T18:34:36+02:00
New Revision: 983565a6fe4a9f40c7caf82b65c650c20dbcc104
URL:
https://github.com/llvm/llvm-project/commit/983565a6fe4a9f40c7caf82b65c650c20dbcc104
DIFF:
https://github.com/llvm/llvm-project/commit/983565a6fe4a9f40c7caf82b65c650c20dbcc104.diff
Author: Nikita Popov
Date: 2021-08-16T20:34:18+02:00
New Revision: 0a031449b2c757400090b23bd6ddf4d896d32643
URL:
https://github.com/llvm/llvm-project/commit/0a031449b2c757400090b23bd6ddf4d896d32643
DIFF:
https://github.com/llvm/llvm-project/commit/0a031449b2c757400090b23bd6ddf4d896d32643.diff
Author: Nikita Popov
Date: 2021-08-16T20:40:55+02:00
New Revision: 570c9beb8ebb4bdcc807101518cc36ad5e20797c
URL:
https://github.com/llvm/llvm-project/commit/570c9beb8ebb4bdcc807101518cc36ad5e20797c
DIFF:
https://github.com/llvm/llvm-project/commit/570c9beb8ebb4bdcc807101518cc36ad5e20797c.diff
Author: Nikita Popov
Date: 2021-07-04T12:17:59+02:00
New Revision: fabc17192ec1c43cb5f6e34eda3e1a55cd9c78f3
URL:
https://github.com/llvm/llvm-project/commit/fabc17192ec1c43cb5f6e34eda3e1a55cd9c78f3
DIFF:
https://github.com/llvm/llvm-project/commit/fabc17192ec1c43cb5f6e34eda3e1a55cd9c78f3.diff
Author: Nikita Popov
Date: 2021-07-08T20:38:54+02:00
New Revision: 693251fb2f001ac06591ae7d1254be265d36c9c7
URL:
https://github.com/llvm/llvm-project/commit/693251fb2f001ac06591ae7d1254be265d36c9c7
DIFF:
https://github.com/llvm/llvm-project/commit/693251fb2f001ac06591ae7d1254be265d36c9c7.diff
Author: Nikita Popov
Date: 2021-07-08T21:21:43+02:00
New Revision: a0ea3675629a1aecc60326e5439d811956b0f92a
URL:
https://github.com/llvm/llvm-project/commit/a0ea3675629a1aecc60326e5439d811956b0f92a
DIFF:
https://github.com/llvm/llvm-project/commit/a0ea3675629a1aecc60326e5439d811956b0f92a.diff
Author: Nikita Popov
Date: 2021-07-09T20:57:44+02:00
New Revision: ff8b1b1b9caef57046bda1ca36c95f0e03527c6e
URL:
https://github.com/llvm/llvm-project/commit/ff8b1b1b9caef57046bda1ca36c95f0e03527c6e
DIFF:
https://github.com/llvm/llvm-project/commit/ff8b1b1b9caef57046bda1ca36c95f0e03527c6e.diff
Author: Nikita Popov
Date: 2021-03-11T10:41:23+01:00
New Revision: 68e01339cc5bc3d8a885bc9413611fbc6ca151e4
URL:
https://github.com/llvm/llvm-project/commit/68e01339cc5bc3d8a885bc9413611fbc6ca151e4
DIFF:
https://github.com/llvm/llvm-project/commit/68e01339cc5bc3d8a885bc9413611fbc6ca151e4.diff
Author: Nikita Popov
Date: 2021-03-11T14:40:57+01:00
New Revision: 46354bac76f60e988537181b3609a8e3ac89f523
URL:
https://github.com/llvm/llvm-project/commit/46354bac76f60e988537181b3609a8e3ac89f523
DIFF:
https://github.com/llvm/llvm-project/commit/46354bac76f60e988537181b3609a8e3ac89f523.diff
Author: Nikita Popov
Date: 2021-03-12T21:01:16+01:00
New Revision: 42eb658f656c43ee63e25222f32acb86ad7b
URL:
https://github.com/llvm/llvm-project/commit/42eb658f656c43ee63e25222f32acb86ad7b
DIFF:
https://github.com/llvm/llvm-project/commit/42eb658f656c43ee63e25222f32acb86ad7b.diff
Author: Nikita Popov
Date: 2021-03-14T17:05:08+01:00
New Revision: e0f70a8a979f5b843e90a0a20442ca79e2507208
URL:
https://github.com/llvm/llvm-project/commit/e0f70a8a979f5b843e90a0a20442ca79e2507208
DIFF:
https://github.com/llvm/llvm-project/commit/e0f70a8a979f5b843e90a0a20442ca79e2507208.diff
Author: Nikita Popov
Date: 2021-11-30T18:36:32+01:00
New Revision: 40d5eeac6cd89a2360c3ba997cbaa816abca828c
URL:
https://github.com/llvm/llvm-project/commit/40d5eeac6cd89a2360c3ba997cbaa816abca828c
DIFF:
https://github.com/llvm/llvm-project/commit/40d5eeac6cd89a2360c3ba997cbaa816abca828c.diff
Author: Nikita Popov
Date: 2022-10-27T10:36:37+02:00
New Revision: 0cbf003c78cdba5cc81b69ee4cd6cee53f2e2796
URL:
https://github.com/llvm/llvm-project/commit/0cbf003c78cdba5cc81b69ee4cd6cee53f2e2796
DIFF:
https://github.com/llvm/llvm-project/commit/0cbf003c78cdba5cc81b69ee4cd6cee53f2e2796.diff
Author: Nikita Popov
Date: 2022-10-06T09:46:04+02:00
New Revision: d785a8eaa25dd1110dc7b24b16d3b21c9c179837
URL:
https://github.com/llvm/llvm-project/commit/d785a8eaa25dd1110dc7b24b16d3b21c9c179837
DIFF:
https://github.com/llvm/llvm-project/commit/d785a8eaa25dd1110dc7b24b16d3b21c9c179837.diff
Author: Nikita Popov
Date: 2022-10-06T12:37:42+02:00
New Revision: 89810cee544db09fbf7d578c6e93db7a9cb0d9e5
URL:
https://github.com/llvm/llvm-project/commit/89810cee544db09fbf7d578c6e93db7a9cb0d9e5
DIFF:
https://github.com/llvm/llvm-project/commit/89810cee544db09fbf7d578c6e93db7a9cb0d9e5.diff
Author: Nikita Popov
Date: 2022-10-06T13:06:02+02:00
New Revision: 956f7f2b4f785271f7fde2a6ff83472d9451968f
URL:
https://github.com/llvm/llvm-project/commit/956f7f2b4f785271f7fde2a6ff83472d9451968f
DIFF:
https://github.com/llvm/llvm-project/commit/956f7f2b4f785271f7fde2a6ff83472d9451968f.diff
Author: Nikita Popov
Date: 2022-10-12T16:38:39+02:00
New Revision: 01bbe87fbb66cad9193c97843b0dd20aa2bd24ae
URL:
https://github.com/llvm/llvm-project/commit/01bbe87fbb66cad9193c97843b0dd20aa2bd24ae
DIFF:
https://github.com/llvm/llvm-project/commit/01bbe87fbb66cad9193c97843b0dd20aa2bd24ae.diff
Author: Nikita Popov
Date: 2022-10-14T16:34:36+02:00
New Revision: 6ce87272487711c9f0ff408a037f5ca2e1ff5c5d
URL:
https://github.com/llvm/llvm-project/commit/6ce87272487711c9f0ff408a037f5ca2e1ff5c5d
DIFF:
https://github.com/llvm/llvm-project/commit/6ce87272487711c9f0ff408a037f5ca2e1ff5c5d.diff
Author: Nikita Popov
Date: 2023-01-05T11:03:15+01:00
New Revision: ebd97534e71aafaa637e466d700f66bbfa63d56b
URL:
https://github.com/llvm/llvm-project/commit/ebd97534e71aafaa637e466d700f66bbfa63d56b
DIFF:
https://github.com/llvm/llvm-project/commit/ebd97534e71aafaa637e466d700f66bbfa63d56b.diff
Author: Nikita Popov
Date: 2022-11-07T17:42:35+01:00
New Revision: 6ebca0302126c43ec8614d26aa444060e7a6da76
URL:
https://github.com/llvm/llvm-project/commit/6ebca0302126c43ec8614d26aa444060e7a6da76
DIFF:
https://github.com/llvm/llvm-project/commit/6ebca0302126c43ec8614d26aa444060e7a6da76.diff
Author: Nikita Popov
Date: 2023-01-25T12:18:50+01:00
New Revision: fb6c1300f23f249aa29eb6c5325aebc7d61d7345
URL:
https://github.com/llvm/llvm-project/commit/fb6c1300f23f249aa29eb6c5325aebc7d61d7345
DIFF:
https://github.com/llvm/llvm-project/commit/fb6c1300f23f249aa29eb6c5325aebc7d61d7345.diff
Author: Nikita Popov
Date: 2023-01-30T09:57:26+01:00
New Revision: 5375b638be874b5438e98bd8a435e198af3ef2d0
URL:
https://github.com/llvm/llvm-project/commit/5375b638be874b5438e98bd8a435e198af3ef2d0
DIFF:
https://github.com/llvm/llvm-project/commit/5375b638be874b5438e98bd8a435e198af3ef2d0.diff
Author: Nikita Popov
Date: 2023-01-31T11:33:00+01:00
New Revision: 5f01a626dd0615df49773d419c75aeb33666ee83
URL:
https://github.com/llvm/llvm-project/commit/5f01a626dd0615df49773d419c75aeb33666ee83
DIFF:
https://github.com/llvm/llvm-project/commit/5f01a626dd0615df49773d419c75aeb33666ee83.diff
Author: Nikita Popov
Date: 2023-01-12T10:03:05+01:00
New Revision: 02856565ac12e21f14f2af64ce1135ecc3c2021f
URL:
https://github.com/llvm/llvm-project/commit/02856565ac12e21f14f2af64ce1135ecc3c2021f
DIFF:
https://github.com/llvm/llvm-project/commit/02856565ac12e21f14f2af64ce1135ecc3c2021f.diff
Author: Nikita Popov
Date: 2023-01-17T10:08:57+01:00
New Revision: b164b047f2b41ff0c0a3ede3baa29c230c78cd32
URL:
https://github.com/llvm/llvm-project/commit/b164b047f2b41ff0c0a3ede3baa29c230c78cd32
DIFF:
https://github.com/llvm/llvm-project/commit/b164b047f2b41ff0c0a3ede3baa29c230c78cd32.diff
Author: Nikita Popov
Date: 2022-06-23T12:46:00+02:00
New Revision: 6f258c0fd34cf4001ffa08c61f6e4e0f1254c50f
URL:
https://github.com/llvm/llvm-project/commit/6f258c0fd34cf4001ffa08c61f6e4e0f1254c50f
DIFF:
https://github.com/llvm/llvm-project/commit/6f258c0fd34cf4001ffa08c61f6e4e0f1254c50f.diff
Author: Nikita Popov
Date: 2022-05-31T15:43:05+02:00
New Revision: 858e6273d938cc4d08ee053ddff3fe7b19eb302a
URL:
https://github.com/llvm/llvm-project/commit/858e6273d938cc4d08ee053ddff3fe7b19eb302a
DIFF:
https://github.com/llvm/llvm-project/commit/858e6273d938cc4d08ee053ddff3fe7b19eb302a.diff
Author: Nikita Popov
Date: 2022-06-02T14:55:58+02:00
New Revision: 30ad481e87ca7cd2250bd5771ab66ddfe623eb10
URL:
https://github.com/llvm/llvm-project/commit/30ad481e87ca7cd2250bd5771ab66ddfe623eb10
DIFF:
https://github.com/llvm/llvm-project/commit/30ad481e87ca7cd2250bd5771ab66ddfe623eb10.diff
nikic wrote:
I think this is the right canonicalization at the IR level, as select allows
better analysis than zext(icmp). However, this seems to be universally worse
for the backend: https://llvm.godbolt.org/z/Yh7brfc8b So I think we would need
an SDAG undo transform. Interestingly, this alre
@@ -6309,7 +6309,69 @@ Instruction
*InstCombinerImpl::foldICmpUsingBoolRange(ICmpInst &I) {
Y->getType()->isIntOrIntVectorTy(1) && Pred == ICmpInst::ICMP_ULE)
return BinaryOperator::CreateOr(Builder.CreateIsNull(X), Y);
+ ICmpInst::Predicate Pred1, Pred2;
const
@@ -6397,6 +6397,48 @@ static Value *simplifyBinaryIntrinsic(Function *F, Value
*Op0, Value *Op1,
return Constant::getNullValue(ReturnType);
break;
}
+ case Intrinsic::ptrmask: {
+// Fail loudly in case this is ever changed.
+// TODO: If vector types are s
@@ -6397,6 +6397,48 @@ static Value *simplifyBinaryIntrinsic(Function *F, Value
*Op0, Value *Op1,
return Constant::getNullValue(ReturnType);
break;
}
+ case Intrinsic::ptrmask: {
+// Fail loudly in case this is ever changed.
+// TODO: If vector types are s
@@ -1984,10 +1984,30 @@ Instruction *InstCombinerImpl::visitCallInst(CallInst
&CI) {
//-> (ptrmask p, (and A, B))
if (match(Op0, m_OneUse(m_Intrinsic(
m_Value(InnerPtr), m_Value(InnerMask) {
+ // See if combining the two masks is fre
@@ -1985,6 +1985,28 @@ Instruction *InstCombinerImpl::visitCallInst(CallInst
&CI) {
{InnerPtr, NewMask}));
}
}
+bool Changed = false;
+KnownBits Known = computeKnownBits(II, /*Depth*/ 0, II);
+// See if we can deduce no
@@ -1985,6 +1985,28 @@ Instruction *InstCombinerImpl::visitCallInst(CallInst
&CI) {
{InnerPtr, NewMask}));
}
}
+bool Changed = false;
+KnownBits Known = computeKnownBits(II, /*Depth*/ 0, II);
+// See if we can deduce no
@@ -1985,6 +1985,28 @@ Instruction *InstCombinerImpl::visitCallInst(CallInst
&CI) {
{InnerPtr, NewMask}));
}
}
+bool Changed = false;
+KnownBits Known = computeKnownBits(II, /*Depth*/ 0, II);
+// See if we can deduce no
@@ -6397,6 +6397,48 @@ static Value *simplifyBinaryIntrinsic(Function *F, Value
*Op0, Value *Op1,
return Constant::getNullValue(ReturnType);
break;
}
+ case Intrinsic::ptrmask: {
+// Fail loudly in case this is ever changed.
+// TODO: If vector types are s
@@ -898,6 +910,53 @@ Value *InstCombinerImpl::SimplifyDemandedUseBits(Value *V,
APInt DemandedMask,
}
break;
}
+ case Intrinsic::ptrmask: {
+// Fail loudly in case this is ever changed.
+// Likely not much needs to be changed here to
@@ -6380,7 +6380,69 @@ Instruction
*InstCombinerImpl::foldICmpUsingBoolRange(ICmpInst &I) {
Y->getType()->isIntOrIntVectorTy(1) && Pred == ICmpInst::ICMP_ULE)
return BinaryOperator::CreateOr(Builder.CreateIsNull(X), Y);
+ // icmp eq/ne X, (zext/sext (icmp eq/ne X,
@@ -6380,7 +6380,69 @@ Instruction
*InstCombinerImpl::foldICmpUsingBoolRange(ICmpInst &I) {
Y->getType()->isIntOrIntVectorTy(1) && Pred == ICmpInst::ICMP_ULE)
return BinaryOperator::CreateOr(Builder.CreateIsNull(X), Y);
+ // icmp eq/ne X, (zext/sext (icmp eq/ne X,
@@ -6397,6 +6397,48 @@ static Value *simplifyBinaryIntrinsic(Function *F, Value
*Op0, Value *Op1,
return Constant::getNullValue(ReturnType);
break;
}
+ case Intrinsic::ptrmask: {
+// Fail loudly in case this is ever changed.
+// TODO: If vector types are s
https://github.com/nikic resolved
https://github.com/llvm/llvm-project/pull/67166
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/nikic resolved
https://github.com/llvm/llvm-project/pull/67166
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -898,6 +910,53 @@ Value *InstCombinerImpl::SimplifyDemandedUseBits(Value *V,
APInt DemandedMask,
}
break;
}
+ case Intrinsic::ptrmask: {
+// Fail loudly in case this is ever changed.
+// Likely not much needs to be changed here to
https://github.com/nikic resolved
https://github.com/llvm/llvm-project/pull/67166
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/nikic resolved
https://github.com/llvm/llvm-project/pull/67166
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -6397,6 +6397,48 @@ static Value *simplifyBinaryIntrinsic(Function *F, Value
*Op0, Value *Op1,
return Constant::getNullValue(ReturnType);
break;
}
+ case Intrinsic::ptrmask: {
+// Fail loudly in case this is ever changed.
+// TODO: If vector types are s
@@ -6397,6 +6397,48 @@ static Value *simplifyBinaryIntrinsic(Function *F, Value
*Op0, Value *Op1,
return Constant::getNullValue(ReturnType);
break;
}
+ case Intrinsic::ptrmask: {
+// Fail loudly in case this is ever changed.
+// TODO: If vector types are s
nikic wrote:
Why does this need special handling in CGP instead of being a normal custom
lowering for FLDEXP?
https://github.com/llvm/llvm-project/pull/67552
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailma
https://github.com/nikic requested changes to this pull request.
If I understood correctly, what you're trying to do here is to apply an icmp
fold early before the sext -> zext information gets lost. I don't think this is
the correct way to approach the problem. The correct way is to preserve t
Author: Nikita Popov
Date: 2023-09-28T16:45:31+02:00
New Revision: fb2bdbb83d3913d9d32b28c1de3f3d8b4e6dfc8a
URL:
https://github.com/llvm/llvm-project/commit/fb2bdbb83d3913d9d32b28c1de3f3d8b4e6dfc8a
DIFF:
https://github.com/llvm/llvm-project/commit/fb2bdbb83d3913d9d32b28c1de3f3d8b4e6dfc8a.diff
https://github.com/nikic created https://github.com/llvm/llvm-project/pull/67772
Pointer arithmetic on void pointers (a GNU extension) was going through a
different code path and bypassed the pointer-overflow sanitizer.
Fixes https://github.com/llvm/llvm-project/issues/66451.
>From ef96c971b50
https://github.com/nikic commented:
Looks fine to me.
https://github.com/llvm/llvm-project/pull/67788
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -3732,14 +3732,18 @@ KnownBits SelectionDAG::computeKnownBits(SDValue Op,
const APInt &DemandedElts,
assert(Op.getResNo() == 0 &&
"We only compute knownbits for the difference here.");
-// TODO: Compute influence of the carry operand.
-if (Opcode ==
@@ -3732,14 +3732,18 @@ KnownBits SelectionDAG::computeKnownBits(SDValue Op,
const APInt &DemandedElts,
assert(Op.getResNo() == 0 &&
"We only compute knownbits for the difference here.");
-// TODO: Compute influence of the carry operand.
-if (Opcode ==
https://github.com/nikic edited https://github.com/llvm/llvm-project/pull/67788
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/nikic edited https://github.com/llvm/llvm-project/pull/67788
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
nikic wrote:
Uh, why are we allowed to assume that memcpy pointer arguments are aligned?
This looks like a miscompile to me.
A plain `int *` pointer is not required to be aligned, and memcpy works on
`void *` pointers, so I'm not sure where an alignment requirement would appear
from.
https:/
nikic wrote:
Looks like this causes a compile-time regression:
https://llvm-compile-time-tracker.com/compare.php?from=abcaebfe3aacb13d46be5e949fd6ed9b4321e2f6&to=4ae51570806ba5c5fcabe6d6dcbe52e3a5d5453b&stat=instructions%3Au
About 0.5% at `O0`.
https://github.com/llvm/llvm-project/pull/66430
_
@@ -6380,7 +6380,71 @@ Instruction
*InstCombinerImpl::foldICmpUsingBoolRange(ICmpInst &I) {
Y->getType()->isIntOrIntVectorTy(1) && Pred == ICmpInst::ICMP_ULE)
return BinaryOperator::CreateOr(Builder.CreateIsNull(X), Y);
+ // icmp eq/ne X, (zext/sext (icmp eq/ne X,
@@ -6380,7 +6380,71 @@ Instruction
*InstCombinerImpl::foldICmpUsingBoolRange(ICmpInst &I) {
Y->getType()->isIntOrIntVectorTy(1) && Pred == ICmpInst::ICMP_ULE)
return BinaryOperator::CreateOr(Builder.CreateIsNull(X), Y);
+ // icmp eq/ne X, (zext/sext (icmp eq/ne X,
@@ -3732,14 +3732,18 @@ KnownBits SelectionDAG::computeKnownBits(SDValue Op,
const APInt &DemandedElts,
assert(Op.getResNo() == 0 &&
"We only compute knownbits for the difference here.");
-// TODO: Compute influence of the carry operand.
-if (Opcode ==
@@ -3732,14 +3732,18 @@ KnownBits SelectionDAG::computeKnownBits(SDValue Op,
const APInt &DemandedElts,
assert(Op.getResNo() == 0 &&
"We only compute knownbits for the difference here.");
-// TODO: Compute influence of the carry operand.
-if (Opcode ==
@@ -3732,14 +3732,18 @@ KnownBits SelectionDAG::computeKnownBits(SDValue Op,
const APInt &DemandedElts,
assert(Op.getResNo() == 0 &&
"We only compute knownbits for the difference here.");
-// TODO: Compute influence of the carry operand.
-if (Opcode ==
Author: Nikita Popov
Date: 2023-10-02T12:40:20+02:00
New Revision: 3b25407d977d9ed3dbcaccd4f8850b65e95d70fd
URL:
https://github.com/llvm/llvm-project/commit/3b25407d977d9ed3dbcaccd4f8850b65e95d70fd
DIFF:
https://github.com/llvm/llvm-project/commit/3b25407d977d9ed3dbcaccd4f8850b65e95d70fd.diff
nikic wrote:
For the clang tests you've split, the `.c` versions still have
`defined(__cplusplus)` checks, which doesn't make much sense.
Though I think we might be better off passing `-no-enable-noundef-analysis` to
these tests, as noundef is really not what they want to test.
https://github
nikic wrote:
Apart from that, the functional changes themselves look good to me.
https://github.com/llvm/llvm-project/pull/67756
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
nikic wrote:
> I also noticed that LoadedSLocEntryTable uses 42 elements tables, which
> probably introduces some extra divisions to do the indexing. I can try
> switching to 32 elements.
I've tested the following change that forces power of two pages sizes, but it
did not have any impact:
h
nikic wrote:
@zygoloid Thanks for the explanation! I wasn't aware this fell under
unspecified behavior. It's weird that alignment information can survive a `void
*` cast, but it does make some sense.
What seems worrying here is that apparently GCC and Clang do not agree on
semantics in this c
nikic wrote:
It looks like x86-bswap.c still has the C++ guarded code in it.
Any thoughts on
> Though I think we might be better off passing `-no-enable-noundef-analysis`
> to these tests, as noundef is really not what they want to test.
to avoid the test duplication?
https://github.com/llvm
nikic wrote:
(Another alternative would be to use different check-prefixes for C/C++)
https://github.com/llvm/llvm-project/pull/67756
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/nikic approved this pull request.
LGTM
https://github.com/llvm/llvm-project/pull/67756
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/nikic closed https://github.com/llvm/llvm-project/pull/67772
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -146,6 +146,13 @@ Non-comprehensive list of changes in this release
New Compiler Flags
--
+* ``-fverify-intermediate-code`` and it's complement
``-fno-verify-intermediate-code``.
+ Enables or disables verification of the generated LLVM IR.
+ It's strongly
@@ -146,6 +146,13 @@ Non-comprehensive list of changes in this release
New Compiler Flags
--
+* ``-fverify-intermediate-code`` and it's complement
``-fno-verify-intermediate-code``.
+ Enables or disables verification of the generated LLVM IR.
+ It's strongly
@@ -146,6 +146,13 @@ Non-comprehensive list of changes in this release
New Compiler Flags
--
+* ``-fverify-intermediate-code`` and it's complement
``-fno-verify-intermediate-code``.
+ Enables or disables verification of the generated LLVM IR.
+ It's strongly
nikic wrote:
Please don't use the term canon/canonicalize for this pass or tool. LLVM has an
existing notion of "canonicalization" which does coincide with what is being
done here.
https://github.com/llvm/llvm-project/pull/68176
___
cfe-commits maili
@@ -2138,6 +2138,8 @@ class IRBuilderBase {
return Insert(CastInst::CreatePointerCast(V, DestTy), Name);
}
+ // With opaque pointers enabled, this is same as CreateAddressSpaceCast.
nikic wrote:
All the IRBuilder cast methods are no-ops if old type ==
https://github.com/nikic approved this pull request.
Basically LGTM, but I think this is still missing negative tests for
non-equality pred1/pred2?
https://github.com/llvm/llvm-project/pull/65852
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://github.com/nikic approved this pull request.
Basically LGTM, but I think this is still missing negative tests for
non-equality pred1/pred2?
https://github.com/llvm/llvm-project/pull/65852
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
Author: Nikita Popov
Date: 2023-07-20T15:24:19+02:00
New Revision: f8a36d8c3e264c4fccf8058e699201a452ea7bb7
URL:
https://github.com/llvm/llvm-project/commit/f8a36d8c3e264c4fccf8058e699201a452ea7bb7
DIFF:
https://github.com/llvm/llvm-project/commit/f8a36d8c3e264c4fccf8058e699201a452ea7bb7.diff
Author: Nikita Popov
Date: 2023-07-20T18:09:17+02:00
New Revision: 9dc391e89c7984394e352ea1cbf948b4bbdcd8a8
URL:
https://github.com/llvm/llvm-project/commit/9dc391e89c7984394e352ea1cbf948b4bbdcd8a8
DIFF:
https://github.com/llvm/llvm-project/commit/9dc391e89c7984394e352ea1cbf948b4bbdcd8a8.diff
Author: Nikita Popov
Date: 2023-07-20T18:09:17+02:00
New Revision: 9dc391e89c7984394e352ea1cbf948b4bbdcd8a8
URL:
https://github.com/llvm/llvm-project/commit/9dc391e89c7984394e352ea1cbf948b4bbdcd8a8
DIFF:
https://github.com/llvm/llvm-project/commit/9dc391e89c7984394e352ea1cbf948b4bbdcd8a8.diff
Author: Nikita Popov
Date: 2023-07-21T10:10:50+02:00
New Revision: 086ee99564afbb11449c08ea2e094f7f49fadde5
URL:
https://github.com/llvm/llvm-project/commit/086ee99564afbb11449c08ea2e094f7f49fadde5
DIFF:
https://github.com/llvm/llvm-project/commit/086ee99564afbb11449c08ea2e094f7f49fadde5.diff
Author: Nikita Popov
Date: 2023-07-25T15:31:45+02:00
New Revision: 0cab8d20417c0e2ccc1ffc5505e080126f5de8e6
URL:
https://github.com/llvm/llvm-project/commit/0cab8d20417c0e2ccc1ffc5505e080126f5de8e6
DIFF:
https://github.com/llvm/llvm-project/commit/0cab8d20417c0e2ccc1ffc5505e080126f5de8e6.diff
Author: Nikita Popov
Date: 2023-08-21T11:44:35+02:00
New Revision: fa1b6e6b34eb6382c451f3a06a7c52d7ac6ada1d
URL:
https://github.com/llvm/llvm-project/commit/fa1b6e6b34eb6382c451f3a06a7c52d7ac6ada1d
DIFF:
https://github.com/llvm/llvm-project/commit/fa1b6e6b34eb6382c451f3a06a7c52d7ac6ada1d.diff
https://github.com/nikic commented:
Seems like some test coverage is missing here?
* Commuted add
* Commuted sub (negative test)
* Commuted and
* Multi-use add (negative test)
https://github.com/llvm/llvm-project/pull/67915
___
cfe-commits mailing
nikic wrote:
Can you please pre-commit the new tests as well (and double-check that there is
no unexpected operand order canonicalization while doing that)?
https://github.com/llvm/llvm-project/pull/67915
___
cfe-commits mailing list
cfe-commits@lists
nikic wrote:
Looks like incorrect conflict resolution in the last merge.
https://github.com/llvm/llvm-project/pull/65852
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
nikic wrote:
Looks like incorrect conflict resolution in the last merge.
https://github.com/llvm/llvm-project/pull/65852
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/nikic approved this pull request.
Yeah, it looks correct now.
https://github.com/llvm/llvm-project/pull/65852
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/nikic approved this pull request.
Yeah, it looks correct now.
https://github.com/llvm/llvm-project/pull/65852
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
nikic wrote:
Using the term for MIR is okay, because it does not have a pre-existing notion
of canonical form. Doing the same for IR is not okay, because it already has a
canonical form and this pass does not produce it. Calling this `ir-normalizer`
instead of `ir-canonicalizer` should convey
nikic wrote:
Using the term for MIR is okay, because it does not have a pre-existing notion
of canonical form. Doing the same for IR is not okay, because it already has a
canonical form and this pass does not produce it. Calling this `ir-normalizer`
instead of `ir-canonicalizer` should convey
nikic wrote:
> GVN seems to have different behavior regarding LoopInfo in the LegacyPM and
> NewPM, but that's an orthogonal issue. I'll check whether always requiring
> LoopInfo in GVN has any compile-time impact, as I don't think this is
> supposed to be an optional analysis there (otherwise
301 - 400 of 1388 matches
Mail list logo