[all-commits] [llvm/llvm-project] 23693f: [InstCombine] reduce xor-of-or's bitwise logic (PR...
RotateRight via All-commits
all-commits at lists.llvm.org
Mon Aug 3 07:28:32 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 23693ffc3ba6146a22cd1e9373e25dc1e1a41a17
https://github.com/llvm/llvm-project/commit/23693ffc3ba6146a22cd1e9373e25dc1e1a41a17
Author: Sanjay Patel <spatel at rotateright.com>
Date: 2020-08-03 (Mon, 03 Aug 2020)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/Transforms/InstCombine/xor.ll
Log Message:
-----------
[InstCombine] reduce xor-of-or's bitwise logic (PR46955); 2nd try
The 1st try at this (rG2265d01f2a5b) exposed what looks like
unspecified behavior in C/C++ resulting in test variations.
The arguments to BinaryOperator::CreateAnd() were both IRBuilder
function calls, and the order in which they execute determines
the order of the new instructions in the IR. But the order of
function arg evaluation is not fixed by the rules of C/C++, so
depending on compiler config, the test would fail because the
test expected a single fixed ordering of instructions.
Original commit message:
I tried to use m_Deferred() on this, but didn't find
a clean way to do that.
http://bugs.llvm.org/PR46955
https://alive2.llvm.org/ce/z/2h6QTq
More information about the All-commits
mailing list