add func instrumentation
[lttv.git] / genevent-new / genevent.c
index e640834dffec355e1413fa77a80079285bd60e14..b912104609e135ac9e5e7cad1c907e8078d74ee1 100644 (file)
@@ -1588,10 +1588,16 @@ int print_event_logging_function(char *basename, facility_t *fac,
 int print_event_logging_function_user(char *basename, facility_t *fac,
                event_t *event, FILE *fd)
 {
+       char *attrib;
+       if(event->no_instrument_function) {
+               attrib = "__attribute__((no_instrument_function)) ";
+       } else {
+               attrib = "";
+       }
        if(event->param_buffer) {
-               fprintf(fd, "static inline int trace_%s_param_buffer(\n", basename);
+               fprintf(fd, "static inline %sint trace_%s_param_buffer(\n", attrib, basename);
        } else {
-               fprintf(fd, "static inline int trace_%s(\n", basename);
+               fprintf(fd, "static inline %sint trace_%s(\n",attrib, basename);
        }
        int     has_argument = 0;
        int has_type_fixed = 0;
@@ -2405,13 +2411,17 @@ int print_loader_c_user(facility_t *fac)
   fprintf(fd, "static void __attribute__((constructor)) __ltt_user_init(void)\n");
   fprintf(fd, "{\n");
   fprintf(fd, "\tint err;\n");
+       fprintf(fd, "#ifdef LTT_SHOW_DEBUG\n");
   fprintf(fd, "\tprintf(\"LTT : ltt-facility-%s init in userspace\\n\");\n", fac->name);
+       fprintf(fd, "#endif //LTT_SHOW_DEBUG\n");
   fprintf(fd, "\n");
   fprintf(fd, "\terr = ltt_register_generic(&LTT_FACILITY_SYMBOL, &facility);\n");
   fprintf(fd, "\tLTT_FACILITY_CHECKSUM_SYMBOL = LTT_FACILITY_SYMBOL;\n");
   fprintf(fd, "\t\n");
   fprintf(fd, "\tif(err) {\n");
+       fprintf(fd, "#ifdef LTT_SHOW_DEBUG\n");
   fprintf(fd, "\t\tperror(\"Error in ltt_register_generic\");\n");
+       fprintf(fd, "#endif //LTT_SHOW_DEBUG\n");
   fprintf(fd, "\t}\n");
   fprintf(fd, "}\n");
   fprintf(fd, "\n");
This page took 0.022796 seconds and 4 git commands to generate.