diff options
-rw-r--r-- | docs/LangRef.html | 50 | ||||
-rw-r--r-- | include/llvm/Intrinsics.td | 5 |
2 files changed, 55 insertions, 0 deletions
diff --git a/docs/LangRef.html b/docs/LangRef.html index 9efc1c1..796aa56 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -191,6 +191,12 @@ </li> <li><a href="#int_debugger">Debugger intrinsics</a></li> <li><a href="#int_eh">Exception Handling intrinsics</a></li> + <li><a href="#int_general">General intrinsics</a></li> + <ol> + <li><a href="#int_var_annotation">'<tt>llvm.var.annotation</tt>' + Intrinsic</a></li> + </ol> + </li> </ol> </li> </ol> @@ -4819,6 +4825,50 @@ href="ExceptionHandling.html#format_common_intrinsics">LLVM Exception Handling</a> document. </p> </div> +<!-- ======================================================================= --> +<div class="doc_subsection"> + <a name="int_general">General Intrinsics</a> +</div> + +<div class="doc_text"> +<p> This class of intrinsics is designed to be generic and has +no specific purpose. </p> +</div> + +<!-- _______________________________________________________________________ --> +<div class="doc_subsubsection"> + <a name="int_var_annotation">'<tt>llvm.var.annotation</tt>' Intrinsic</a> +</div> + +<div class="doc_text"> + +<h5>Syntax:</h5> +<pre> + declare void @llvm.var.annotation(i8* <val>, i8* <str>) +</pre> + +<h5>Overview:</h5> + +<p> +The '<tt>llvm.var.annotation</tt>' intrinsic +</p> + +<h5>Arguments:</h5> + +<p> +The first argument is a pointer to a value, and the second is a pointer to a +global string. +</p> + +<h5>Semantics:</h5> + +<p> +This intrinsic allows annotation of local variables with arbitrary strings. +This can be useful for special purpose optimizations that want to look for these + annotations. These have no other defined use, they are ignored by code + generation and optimization. +</div> + <!-- *********************************************************************** --> <hr> diff --git a/include/llvm/Intrinsics.td b/include/llvm/Intrinsics.td index e76362d..4b427f3 100644 --- a/include/llvm/Intrinsics.td +++ b/include/llvm/Intrinsics.td @@ -235,6 +235,11 @@ def int_eh_filter : Intrinsic<[llvm_i32_ty, llvm_ptr_ty, llvm_ptr_ty, llvm_vararg_ty]>; def int_eh_typeid_for : Intrinsic<[llvm_i32_ty, llvm_ptr_ty]>; +//===---------------- Generic Variable Attribute Intrinsics----------------===// +// +def int_var_annotation : Intrinsic<[llvm_void_ty, llvm_ptr_ty, llvm_ptr_ty], + [], "llvm.var.annotation">; + //===----------------------------------------------------------------------===// // Target-specific intrinsics //===----------------------------------------------------------------------===// |