[PATCH] CodeGenPrepare: Avoid and/or i1 in select conditions.

Matthias Braun matze at braunis.de
Wed Mar 4 10:41:18 PST 2015


Thanks for the review Hal, the new version uses hasMultipleConditionRegisters() as default.

> ================

>  Comment at: lib/CodeGen/SelectionDAG/DAGCombiner.cpp:4714

>  @@ +4713,3 @@

>  +  const SDNode *Node = Value.getNode();

>  +  for (auto I = Node->use_begin(), E = Node->use_end(); I != E; ++I) {

>  +    const SDUse &Use = I.getUse();

> 

> - Range-based for?


A range based for prohibits me from doing I.getUse() above as I can't access the iterator anymore.


REPOSITORY
  rL LLVM

http://reviews.llvm.org/D7622

Files:
  include/llvm/Target/TargetLowering.h
  lib/CodeGen/SelectionDAG/DAGCombiner.cpp
  test/CodeGen/ARM/movcc-double.ll
  test/CodeGen/R600/or.ll
  test/CodeGen/X86/cmov-double.ll
  test/CodeGen/X86/jump_sign.ll
  test/CodeGen/X86/zext-sext.ll

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D7622.21217.patch
Type: text/x-patch
Size: 11168 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150304/73f5b40d/attachment.bin>


More information about the llvm-commits mailing list