summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86Schedule.td
diff options
context:
space:
mode:
authorAndrew Trick <atrick@apple.com>2012-02-29 19:44:41 +0000
committerAndrew Trick <atrick@apple.com>2012-02-29 19:44:41 +0000
commit6eb6528b98103776f03e2a287653ed2124f74cb4 (patch)
treedea1482e2b5421c175785d8fcb8be87fb03a88a7 /llvm/lib/Target/X86/X86Schedule.td
parent435d85a2c29fba1fd8ac1defca5043b7f0a55340 (diff)
downloadbcm5719-llvm-6eb6528b98103776f03e2a287653ed2124f74cb4.tar.gz
bcm5719-llvm-6eb6528b98103776f03e2a287653ed2124f74cb4.zip
Intel Atom instruction itineraries for mov sign extension and mov zero extension.
Patch by Tyler Nowicki! llvm-svn: 151743
Diffstat (limited to 'llvm/lib/Target/X86/X86Schedule.td')
-rw-r--r--llvm/lib/Target/X86/X86Schedule.td11
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86Schedule.td b/llvm/lib/Target/X86/X86Schedule.td
index 9692833486e..d6d01495666 100644
--- a/llvm/lib/Target/X86/X86Schedule.td
+++ b/llvm/lib/Target/X86/X86Schedule.td
@@ -103,6 +103,17 @@ def IIC_CALL_FAR_PTR : InstrItinClass;
// ret
def IIC_RET : InstrItinClass;
def IIC_RET_IMM : InstrItinClass;
+//sign extension movs
+def IIC_MOVSX : InstrItinClass;
+def IIC_MOVSX_R16_R8 : InstrItinClass;
+def IIC_MOVSX_R16_M8 : InstrItinClass;
+def IIC_MOVSX_R16_R16 : InstrItinClass;
+def IIC_MOVSX_R32_R32 : InstrItinClass;
+//zero extension movs
+def IIC_MOVZX : InstrItinClass;
+def IIC_MOVZX_R16_R8 : InstrItinClass;
+def IIC_MOVZX_R16_M8 : InstrItinClass;
+
// SSE scalar/parallel binary operations
def IIC_SSE_ALU_F32S_RR : InstrItinClass;
def IIC_SSE_ALU_F32S_RM : InstrItinClass;
OpenPOWER on IntegriCloud