[llvm] r327488 - [AMDGPU] Fix for DAGCombiner infinite loop in OCLtst
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Wed Mar 14 07:15:34 PDT 2018
> On Mar 14, 2018, at 05:48, Alexander Timofeev via llvm-commits <llvm-commits at lists.llvm.org> wrote:
>
> Author: alex-t
> Date: Wed Mar 14 02:48:51 2018
> New Revision: 327488
>
> URL: http://llvm.org/viewvc/llvm-project?rev=327488&view=rev
> Log:
> [AMDGPU] Fix for DAGCombiner infinite loop in OCLtst
>
> Differential revision: https://reviews.llvm.org/D44417
>
> Modified:
> llvm/trunk/include/llvm/CodeGen/SelectionDAGNodes.h
>
> Modified: llvm/trunk/include/llvm/CodeGen/SelectionDAGNodes.h
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/CodeGen/SelectionDAGNodes.h?rev=327488&r1=327487&r2=327488&view=diff
> ==============================================================================
> --- llvm/trunk/include/llvm/CodeGen/SelectionDAGNodes.h (original)
> +++ llvm/trunk/include/llvm/CodeGen/SelectionDAGNodes.h Wed Mar 14 02:48:51 2018
> @@ -1194,7 +1194,8 @@ public:
> /// encoding of the volatile flag, as well as bits used by subclasses. This
> /// function should only be used to compute a FoldingSetNodeID value.
> /// The HasDebugValue bit is masked out because CSE map needs to match
> - /// nodes with debug info with nodes without debug info.
> + /// nodes with debug info with nodes without debug info. Same is about
> + /// isDivergent bit.
> unsigned getRawSubclassData() const {
> uint16_t Data;
> union {
> @@ -1203,6 +1204,7 @@ public:
> };
> memcpy(&RawSDNodeBits, &this->RawSDNodeBits, sizeof(this->RawSDNodeBits));
> SDNodeBits.HasDebugValue = 0;
> + SDNodeBits.IsDivergent = false;
> memcpy(&Data, &RawSDNodeBits, sizeof(RawSDNodeBits));
> return Data;
> }
>
Testcase?
More information about the llvm-commits
mailing list