Fix: filter-grammar-test: add dependencies between steps
[lttng-tools.git] / src / lib / lttng-ctl / filter / filter-grammar-test.c
index 136ef0c78f2b924d1befe61bd04050ba1fb7f04a..70656e1a84f42f87b1b0a35bb1579f2b15e908c9 100644 (file)
@@ -3,20 +3,10 @@
  *
  * LTTng filter grammar test
  *
- * Copyright 2012 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+ * Copyright 2012 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
  *
- * This library is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License, version 2.1 only,
- * as published by the Free Software Foundation.
+ * SPDX-License-Identifier: LGPL-2.1-only
  *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
 #include <stdio.h>
@@ -51,6 +41,22 @@ int main(int argc, char **argv)
                        print_bytecode = 1;
        }
 
+       /*
+        * Force generate the bytecode if the user asks to print the bytecode
+        * (can't print it without generating it first).
+        */
+       if (print_bytecode) {
+               generate_bytecode = 1;
+       }
+
+       /*
+        * Force generate the IR if the user asks to generate the bytecode
+        * (the bytecode is generated by visiting the IR).
+        */
+       if (generate_bytecode) {
+               generate_ir = 1;
+       }
+
        ctx = filter_parser_ctx_alloc(stdin);
        if (!ctx) {
                fprintf(stderr, "Error allocating parser\n");
@@ -61,11 +67,6 @@ int main(int argc, char **argv)
                fprintf(stderr, "Parse error\n");
                goto parse_error;
        }
-       ret = filter_visitor_set_parent(ctx);
-       if (ret) {
-               fprintf(stderr, "Set parent error\n");
-               goto parse_error;
-       }
        if (print_xml) {
                ret = filter_visitor_print_xml(ctx, stdout, 0);
                if (ret) {
@@ -104,23 +105,6 @@ int main(int argc, char **argv)
                printf("Size of bytecode generated: %u bytes.\n",
                        bytecode_get_len(&ctx->bytecode->b));
        }
-#if 0
-       if (run_bytecode) {
-               int64_t retval;
-
-               printf("Interpreting bytecode... ");
-               fflush(stdout);
-               ret = bytecode_interpret(&ctx->bytecode->b, &retval, NULL);
-               if (ret) {
-                       fprintf(stderr, "Error interpreting bytecode\n");
-                       goto parse_error;
-               } else {
-                       printf("Bytecode interpret result: %" PRIi64 "\n",
-                               retval);
-               }
-               printf("done\n");
-       }
-#endif //0
 
        if (print_bytecode) {
                unsigned int bytecode_len, len, i;
This page took 0.025573 seconds and 4 git commands to generate.