diff options
| author | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2010-07-09 21:42:42 +0000 |
|---|---|---|
| committer | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2010-07-09 21:42:42 +0000 |
| commit | 2419606bfbfe63caff088a8648c60dcbecc0dfbc (patch) | |
| tree | 0053da8e0be5556a65a5a147f27ff6bd44e0cc81 /llvm/lib/Target/X86 | |
| parent | e2614a99799742f8ba945912b5cfad89943d917e (diff) | |
| download | bcm5719-llvm-2419606bfbfe63caff088a8648c60dcbecc0dfbc.tar.gz bcm5719-llvm-2419606bfbfe63caff088a8648c60dcbecc0dfbc.zip | |
Add AVX 256-bit packed MOVNT variants
llvm-svn: 108021
Diffstat (limited to 'llvm/lib/Target/X86')
| -rw-r--r-- | llvm/lib/Target/X86/X86InstrSSE.td | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86InstrSSE.td b/llvm/lib/Target/X86/X86InstrSSE.td index 45b48012b42..afdedd4de4a 100644 --- a/llvm/lib/Target/X86/X86InstrSSE.td +++ b/llvm/lib/Target/X86/X86InstrSSE.td @@ -2117,6 +2117,28 @@ let isAsmParserOnly = 1 in { "movntdq\t{$src, $dst|$dst, $src}", [(alignednontemporalstore (v4f32 VR128:$src), addr:$dst)]>, VEX; + + def VMOVNTPSYmr : VPSI<0x2B, MRMDestMem, (outs), + (ins f256mem:$dst, VR256:$src), + "movntps\t{$src, $dst|$dst, $src}", + [(alignednontemporalstore (v8f32 VR256:$src), + addr:$dst)]>, VEX; + def VMOVNTPDYmr : VPDI<0x2B, MRMDestMem, (outs), + (ins f256mem:$dst, VR256:$src), + "movntpd\t{$src, $dst|$dst, $src}", + [(alignednontemporalstore (v4f64 VR256:$src), + addr:$dst)]>, VEX; + def VMOVNTDQY_64mr : VPDI<0xE7, MRMDestMem, (outs), + (ins f256mem:$dst, VR256:$src), + "movntdq\t{$src, $dst|$dst, $src}", + [(alignednontemporalstore (v4f64 VR256:$src), + addr:$dst)]>, VEX; + let ExeDomain = SSEPackedInt in + def VMOVNTDQYmr : VPDI<0xE7, MRMDestMem, (outs), + (ins f256mem:$dst, VR256:$src), + "movntdq\t{$src, $dst|$dst, $src}", + [(alignednontemporalstore (v8f32 VR256:$src), + addr:$dst)]>, VEX; } } |

