Add the llvm.frameallocate and llvm.recoverframeallocation intrinsics
[oota-llvm.git] / include / llvm / Target / Target.td
index 7a5ae092778e68eb0c3024748c6ffb736217fc1c..6c970d0c19db25e05e2e045b00db752ac714ed0a 100644 (file)
@@ -865,6 +865,15 @@ def LOAD_STACK_GUARD : Instruction {
   let hasSideEffects = 0;
   bit isPseudo = 1;
 }
+def FRAME_ALLOC : Instruction {
+  // This instruction is really just a label. It has to be part of the chain so
+  // that it doesn't get dropped from the DAG, but it produces nothing and has
+  // no side effects.
+  let OutOperandList = (outs);
+  let InOperandList = (ins ptr_rc:$symbol, i32imm:$id);
+  let hasSideEffects = 0;
+  let hasCtrlDep = 1;
+}
 }
 
 //===----------------------------------------------------------------------===//