diff options
author | Alexei Starovoitov <alexei.starovoitov@gmail.com> | 2015-10-08 18:52:40 +0000 |
---|---|---|
committer | Alexei Starovoitov <alexei.starovoitov@gmail.com> | 2015-10-08 18:52:40 +0000 |
commit | 87f83e6926cfe4434eccaa2960a849d579c4a3c1 (patch) | |
tree | de69b8b22a07bd26e736c8d63ebcf6ba48d024c9 /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | e03b62f3bcad771cc3911408cda75a62ef6863f4 (diff) | |
download | llvm-87f83e6926cfe4434eccaa2960a849d579c4a3c1.zip llvm-87f83e6926cfe4434eccaa2960a849d579c4a3c1.tar.gz llvm-87f83e6926cfe4434eccaa2960a849d579c4a3c1.tar.bz2 |
[bpf] Do not expand UNDEF SDNode during insn selection lowering
o Before this patch, BPF backend will expand UNDEF node
to i64 constant 0.
o For second pass of dag combiner, legalizer will run through
each to-be-processed dag node.
o If any new SDNode is generated and has an undef operand,
dag combiner will put undef node, newly-generated constant-0 node,
and any node which uses these nodes in the working list.
o During this process, it is possible undef operand is
generated again, and this will form an infinite loop
for dag combiner pass2.
o This patch allows UNDEF to be a legal type.
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
Signed-off-by: Alexei Starovoitov <ast@plumgrid.com>
llvm-svn: 249718
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions