danilaml wrote:
Would've been nice to at least mark it deprecated first but oh well.
https://github.com/llvm/llvm-project/pull/144383
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
danilaml wrote:
@nikic also, another situation the current impl doesn't seem to account for is
IR like
```llvm
bb1:
%p1 = load dereferenceable(N)
...
bb2:
%p2 = load dereferenceable(M)
...
common:
%p = phi ptr [%p1, %bb1], [%p2, %bb2]
%res = load i32 %p ; <-- dereferenceable(min(N,M)) at
danilaml wrote:
@nikic Does `AllowEphemerals` actually do what we want in that case? Haven't
looked in detail, but on the surface it seemed way more involved than just `if
(I == CtxI) return true;`.
https://github.com/llvm/llvm-project/pull/109277
__
danilaml wrote:
@nikic one thing I've discovered with this fact is that now `load` is not
dereferenceable at "load" itself due to `isValidAssumeForContext` quirk of not
allowing `assume` affect itself. Not sure if it's intentional for attributes
here - makes it look like it's not safe to specu
danilaml wrote:
@nikic ah, yeah. I remember the issue with dereferenceable w.r.t. free
discussion. Guess will have to roll something for allocations that don't have
this problem.
https://github.com/llvm/llvm-project/pull/109277
___
cfe-commits mailin
danilaml wrote:
@nikic By the way, are there plans to support allocation functions other than
alloca in this check? I don't see currently any llvm passes assigning
dereferenceable(_or_null) attribute to something like `malloc(42)` , but I
don't see why not and in that case this should also be
danilaml wrote:
@nikic I mean not in theory but currently. I don't see those (except allocas)
handled anywhere unless I'm missing something?
https://github.com/llvm/llvm-project/pull/109277
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https
danilaml wrote:
Is it even possible for `isSafeToSpeculativelyExecute` to return `true` now
with the default (nullptr) CtxI?
https://github.com/llvm/llvm-project/pull/109277
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.o