OSDN Git Service

Enhance boolean simplification to handle 16-/64-bit RDRAND
authorMichael Liao <michael.liao@intel.com>
Thu, 28 Mar 2013 23:38:52 +0000 (23:38 +0000)
committerMichael Liao <michael.liao@intel.com>
Thu, 28 Mar 2013 23:38:52 +0000 (23:38 +0000)
commit258d9b7bc021ebc78f5a3aef3907e225e632edfa
treeadc888a2d7a587eabbc572cec42edc4a41d86a29
parent816f6d0ac76c0ffb2ea9ecb72349d5d7d0fa8d1a
Enhance boolean simplification to handle 16-/64-bit RDRAND

- RDRAND always clears the destination value when a random value is not
  available (i.e. CF == 0). This value is truncated or zero-extended as
  the false boolean value to be returned. Boolean simplification needs
  to skip this 'zext' or 'trunc' node.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178312 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/bool-simplify.ll