X86: Emit Win64 SaveXMM opcodes at the right offset in the right order
[oota-llvm.git] / lib / Target / R600 / VIInstructions.td
1 //===-- VIInstructions.td - VI Instruction Defintions ---------------------===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 // Instruction definitions for VI and newer.
10 //===----------------------------------------------------------------------===//
11
12
13 //===----------------------------------------------------------------------===//
14 // SMEM Patterns
15 //===----------------------------------------------------------------------===//
16
17 let Predicates = [isVI] in {
18
19 // 1. Offset as 20bit DWORD immediate
20 def : Pat <
21   (SIload_constant v4i32:$sbase, IMM20bit:$offset),
22   (S_BUFFER_LOAD_DWORD_IMM $sbase, (as_i32imm $offset))
23 >;
24
25 } // End Predicates = [isVI]