tp: switch to using a proper LALR parser for preprocessor
This CL changes the preprocessor to use a proper LALR parser generated
by Lemon, SQLite's parser generator.
This CL is in very rough shape but that's somewhat intentional as I
anticipate a lot of this changing in upcoming CLs.
Change-Id: Id89f87020184eb9a27f9c7bce1eafa32f8a898d1
diff --git a/Android.bp b/Android.bp
index 1b7b970..76c8a42 100644
--- a/Android.bp
+++ b/Android.bp
@@ -2509,6 +2509,7 @@
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_interface",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_table_functions",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_types_types",
+ ":perfetto_src_trace_processor_perfetto_sql_preprocessor_grammar",
":perfetto_src_trace_processor_perfetto_sql_preprocessor_preprocessor",
":perfetto_src_trace_processor_sorter_sorter",
":perfetto_src_trace_processor_sqlite_bindings_bindings",
@@ -13422,6 +13423,14 @@
name: "perfetto_src_trace_processor_perfetto_sql_intrinsics_types_types",
}
+// GN: //src/trace_processor/perfetto_sql/preprocessor:grammar
+filegroup {
+ name: "perfetto_src_trace_processor_perfetto_sql_preprocessor_grammar",
+ srcs: [
+ "src/trace_processor/perfetto_sql/preprocessor/preprocessor_grammar.c",
+ ],
+}
+
// GN: //src/trace_processor/perfetto_sql/preprocessor:preprocessor
filegroup {
name: "perfetto_src_trace_processor_perfetto_sql_preprocessor_preprocessor",
@@ -13533,8 +13542,6 @@
"src/trace_processor/perfetto_sql/stdlib/linux/memory/process.sql",
"src/trace_processor/perfetto_sql/stdlib/linux/perf/samples.sql",
"src/trace_processor/perfetto_sql/stdlib/linux/threads.sql",
- "src/trace_processor/perfetto_sql/stdlib/metasql/column_list.sql",
- "src/trace_processor/perfetto_sql/stdlib/metasql/table_list.sql",
"src/trace_processor/perfetto_sql/stdlib/pkvm/hypervisor.sql",
"src/trace_processor/perfetto_sql/stdlib/prelude/casts.sql",
"src/trace_processor/perfetto_sql/stdlib/prelude/slices.sql",
@@ -15555,6 +15562,7 @@
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_table_functions",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_unittests",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_types_types",
+ ":perfetto_src_trace_processor_perfetto_sql_preprocessor_grammar",
":perfetto_src_trace_processor_perfetto_sql_preprocessor_preprocessor",
":perfetto_src_trace_processor_perfetto_sql_preprocessor_unittests",
":perfetto_src_trace_processor_rpc_rpc",
@@ -16602,6 +16610,7 @@
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_interface",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_table_functions",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_types_types",
+ ":perfetto_src_trace_processor_perfetto_sql_preprocessor_grammar",
":perfetto_src_trace_processor_perfetto_sql_preprocessor_preprocessor",
":perfetto_src_trace_processor_rpc_httpd",
":perfetto_src_trace_processor_rpc_rpc",
@@ -17014,6 +17023,7 @@
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_interface",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_table_functions",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_types_types",
+ ":perfetto_src_trace_processor_perfetto_sql_preprocessor_grammar",
":perfetto_src_trace_processor_perfetto_sql_preprocessor_preprocessor",
":perfetto_src_trace_processor_sorter_sorter",
":perfetto_src_trace_processor_sqlite_bindings_bindings",