Added documentation for noinstrument.
authorJustin Seyster <jseyster@cs.sunysb.edu>
Thu, 21 Oct 2010 18:52:09 +0000 (14:52 -0400)
committerJustin Seyster <jseyster@cs.sunysb.edu>
Thu, 21 Oct 2010 18:52:09 +0000 (14:52 -0400)
src/aop-doxy-main.c

index eafdde8a89e26db8900d2d3489d336893a628a6d..5a819728d2172b38481c9b64e71bf6f1f3d6016f 100644 (file)
  * - struct aop_joinpoint
  * - struct aop_dynval
  * - struct aop_type
+ *
+ * \section noinstrument Noinstrument
+ *
+ * InterAspect adds a <code>noinstrument</code> attribute that you can
+ * use to disable instrumentation for a specific function in the
+ * target program.  Any pass that you register with
+ * aop_register_pass() will skip over functions marked
+ * <code>noinstrument</code>.
+ *
+ * You can mark a function with this attribute using GCC's attribute
+ * syntax:
+ * \code
+ * __attribute__((noinstrument)) void foo() {
+ * \endcode
+ *
+ * The <code>noinstrument</code> attribute is especially useful for
+ * ensuring that advice functions and the functions they call do not
+ * themselves get instrumented (which can cause unbounded recursion
+ * and other problems).
  */
 
 /**