[all-commits] [llvm/llvm-project] 8a6698: [ValueTracking] Loads with !dereferenceable metada...
Nikita Popov via All-commits
all-commits at lists.llvm.org
Wed May 25 00:54:19 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 8a6698b5238228876e7e5eb20ed82167ab1b04db
https://github.com/llvm/llvm-project/commit/8a6698b5238228876e7e5eb20ed82167ab1b04db
Author: Nikita Popov <npopov at redhat.com>
Date: 2022-05-25 (Wed, 25 May 2022)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/InstCombine/freeze.ll
Log Message:
-----------
[ValueTracking] Loads with !dereferenceable metadata cannot be undef/poison
A load with !dereferenceable or !dereferenceable_or_null metadata
must return a well-defined (non-undef/poison) value. Effectively
they imply !noundef. This is the same as we do for the
dereferenceable(N) attribute.
This should fix https://github.com/llvm/llvm-project/issues/55672,
or at least the specific case discussed there.
Differential Revision: https://reviews.llvm.org/D126296
More information about the All-commits
mailing list