[PATCH] D47143: [InstrSimplify, NewGVN] Add option to ignore additional instr info when simplifying.

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 1 06:32:37 PDT 2018


fhahn updated this revision to Diff 158525.
fhahn retitled this revision from "[InstrSimplify,NewGVN] Add option to ignore metadata when simplifying." to "[InstrSimplify,NewGVN] Add option to ignore additional instr info when simplifying.".
fhahn edited the summary of this revision.
fhahn added a comment.

I've updated the patch to have a query object which provides convenience wrappers around getMetadata, hasNo* and isExact, which return conservative results if it's not safe to use any of those. I've also threaded this through at a lot more places and added a few test cases with nsw/exact.

I also updated the title and the description with more details. What do you think of the overall approach? There is some refactoring which might make this slightly less invasive, as using the function versions that take a Query object everywhere internally in  ValueTracking.cpp/InstructionSimplify.cpp


https://reviews.llvm.org/D47143

Files:
  include/llvm/Analysis/InstructionSimplify.h
  include/llvm/Analysis/ValueTracking.h
  lib/Analysis/InstructionSimplify.cpp
  lib/Analysis/ValueTracking.cpp
  lib/Transforms/Scalar/NewGVN.cpp
  test/Transforms/NewGVN/flags-simplify.ll
  test/Transforms/NewGVN/metadata-simplify.ll
  test/Transforms/NewGVN/pr33185.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D47143.158525.patch
Type: text/x-patch
Size: 60653 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180801/99d4cd3b/attachment-0001.bin>


More information about the llvm-commits mailing list