lima/ppir: duplicate consts in nir
[mesa.git] / src / gallium / drivers / lima / meson.build
index b6a197fcc8d9ea3462bc6a2dc4354e69f8868adb..1b1affb0b24a985ceb5e26e04b560191d60a94ea 100644 (file)
@@ -29,9 +29,9 @@ files_lima = files(
   'ir/gp/codegen.h',
   'ir/gp/codegen.c',
   'ir/gp/reduce_scheduler.c',
-  'ir/gp/value_regalloc.c',
-  'ir/gp/physical_regalloc.c',
+  'ir/gp/regalloc.c',
   'ir/gp/disasm.c',
+  'ir/gp/optimize.c',
 
   'ir/pp/ppir.h',
   'ir/pp/nir.c',
@@ -40,12 +40,16 @@ files_lima = files(
   'ir/pp/scheduler.c',
   'ir/pp/instr.c',
   'ir/pp/regalloc.c',
+  'ir/pp/liveness.c',
   'ir/pp/codegen.h',
   'ir/pp/codegen.c',
   'ir/pp/node_to_instr.c',
   'ir/pp/disasm.c',
 
+  'ir/lima_nir_duplicate_consts.c',
+  'ir/lima_nir_duplicate_intrinsic.c',
   'ir/lima_nir_lower_uniform_to_scalar.c',
+  'ir/lima_nir_split_load_input.c',
 
   'ir/lima_ir.h',
 
@@ -61,19 +65,36 @@ files_lima = files(
   'lima_query.c',
   'lima_bo.c',
   'lima_bo.h',
-  'lima_submit.c',
-  'lima_submit.h',
+  'lima_job.c',
+  'lima_job.h',
+  'lima_parser.c',
+  'lima_parser.h',
   'lima_util.c',
   'lima_util.h',
   'lima_texture.c',
   'lima_texture.h',
   'lima_fence.c',
   'lima_fence.h',
+  'lima_format.h',
+  'lima_format.c',
+  'lima_gpu.h',
+)
+
+lima_nir_algebraic_c = custom_target(
+  'lima_nir_algebraic.c',
+  input : 'ir/lima_nir_algebraic.py',
+  output : 'lima_nir_algebraic.c',
+  command : [
+    prog_python, '@INPUT@',
+    '-p', join_paths(meson.source_root(), 'src/compiler/nir/'),
+  ],
+  capture : true,
+  depend_files : nir_algebraic_py,
 )
 
 liblima = static_library(
   'lima',
-  files_lima,
+  files_lima, lima_nir_algebraic_c,
   include_directories : [
     inc_src, inc_include, inc_gallium, inc_gallium_aux, inc_gallium_drivers,
     inc_panfrost
@@ -86,3 +107,46 @@ driver_lima = declare_dependency(
   link_with : [liblima, liblimawinsys, libpanfrost_shared],
   dependencies : idep_nir,
 )
+
+
+lima_compiler = executable(
+  'lima_compiler',
+  files(
+    'standalone/lima_compiler_cmdline.c',
+    'standalone/glsl.cpp'
+  ),
+  include_directories : [
+    inc_src, inc_include, inc_gallium, inc_gallium_aux, inc_gallium_drivers, inc_mesa, inc_mapi, inc_compiler,
+  ],
+  dependencies : [
+    idep_nir,
+    idep_mesautil,
+  ],
+  link_with : [
+    liblima,
+    libgallium,
+    libglsl_standalone,
+    libpanfrost_shared,
+  ],
+  build_by_default : with_tools.contains('lima'),
+  install : with_tools.contains('lima'),
+)
+
+lima_disasm = executable(
+  'lima_disasm',
+  files(
+    'standalone/lima_disasm.c',
+  ),
+  include_directories : [
+    inc_src, inc_include, inc_gallium, inc_gallium_aux, inc_gallium_drivers, inc_mesa, inc_mapi, inc_compiler,
+  ],
+  dependencies : [
+    idep_mesautil,
+  ],
+  link_with : [
+    liblima,
+    libpanfrost_shared,
+  ],
+  build_by_default : with_tools.contains('lima'),
+  install : with_tools.contains('lima'),
+)