<div class="gmail_extra"><div class="gmail_quote">On Mon, Oct 1, 2012 at 12:33 AM, Craig Topper <span dir="ltr"><<a href="mailto:craig.topper@gmail.com" target="_blank" class="cremed">craig.topper@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: ctopper<br>
Date: Mon Oct  1 02:33:27 2012<br>
New Revision: 164926<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=164926&view=rev" target="_blank" class="cremed">http://llvm.org/viewvc/llvm-project?rev=164926&view=rev</a><br>
Log:<br>
Use constants for all return values in switch. Allows clang to optimize it into a lookup table.<br>
<br>
Modified:<br>
    llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp<br>
<br>
Modified: llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp?rev=164926&r1=164925&r2=164926&view=diff" target="_blank" class="cremed">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp?rev=164926&r1=164925&r2=164926&view=diff</a><br>

==============================================================================<br>
--- llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp Mon Oct  1 02:33:27 2012<br>
@@ -243,9 +243,14 @@<br>
   case X86::R15: case X86::R15D: case X86::R15W: case X86::R15B:<br>
     return N86::EDI;<br>
<br>
-  case X86::ST0: case X86::ST1: case X86::ST2: case X86::ST3:<br>
-  case X86::ST4: case X86::ST5: case X86::ST6: case X86::ST7:<br>
-    return RegNo-X86::ST0;<br>
+  case X86::ST0: return 0;<br>
+  case X86::ST1: return 1;<br>
+  case X86::ST2: return 2;<br>
+  case X86::ST3: return 3;<br>
+  case X86::ST4: return 4;<br>
+  case X86::ST5: return 5;<br>
+  case X86::ST6: return 6;<br>
+  case X86::ST7: return 7;<br></blockquote><div><br></div><div>Out of curiosity, why are we unable to form the lookup table out of this? It seems like a common pattern that should be directly supported.</div><div><br></div>
</div></div>