[PATCH] [InstCombine][CodeGenPrep] Create llvm.uadd.with.overflow in CGP.

Sanjoy Das sanjoy at playingwithpointers.com
Tue Apr 7 20:32:11 PDT 2015


Hi majnemer, atrick,

This change moves creating calls to `llvm.uadd.with.overflow` to from
InstCombine to CodeGenPrep.  Combining overflow check patterns into
calls to the said intrinsic in InstCombine inhibits optimization because
it introduces an intrinsic call that not all other transforms and
analyses understand.

Depends on D8888.

http://reviews.llvm.org/D8889

Files:
  include/llvm/IR/PatternMatch.h
  lib/CodeGen/CodeGenPrepare.cpp
  lib/Transforms/InstCombine/InstCombineCompares.cpp
  test/CodeGen/X86/add-of-carry.ll
  test/Transforms/CodeGenPrepare/overflow-intrinsics.ll
  test/Transforms/InstCombine/overflow.ll

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D8889.23391.patch
Type: text/x-patch
Size: 11409 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150408/ef95972c/attachment.bin>


More information about the llvm-commits mailing list