@@ -10490,35 +10490,16 @@ static void getSPIRVBackendOpts(const llvm::opt::ArgList &TCArgs,
1049010490 TCArgs.MakeArgString (" --avoid-spirv-capabilities=Shader" ));
1049110491 BackendArgs.push_back (
1049210492 TCArgs.MakeArgString (" --translator-compatibility-mode" ));
10493-
10494- // Disable all the extensions by default
10495- std::string ExtArg (" -spirv-ext=-all" );
10496- std::string DefaultExtArg =
10497- " ,+SPV_EXT_shader_atomic_float_add,+SPV_EXT_shader_atomic_float_min_max"
10498- " ,+SPV_KHR_no_integer_wrap_decoration,+SPV_KHR_float_controls"
10499- " ,+SPV_KHR_expect_assume,+SPV_KHR_linkonce_odr" ;
10500- std::string INTELExtArg = " ,+SPV_INTEL_subgroups,+SPV_INTEL_media_block_io"
10501- " ,+SPV_INTEL_function_pointers"
10502- " ,+SPV_INTEL_inline_assembly"
10503- " ,+SPV_INTEL_arbitrary_precision_integers"
10504- " ,+SPV_INTEL_float_controls2"
10505- " ,+SPV_INTEL_variable_length_array"
10506- " ,+SPV_INTEL_long_composites"
10507- " ,+SPV_INTEL_cache_controls"
10508- " ,+SPV_KHR_shader_clock"
10509- " ,+SPV_INTEL_bindless_images" ;
10510- ExtArg = ExtArg + DefaultExtArg + INTELExtArg;
10511- ExtArg += " ,+SPV_INTEL_bfloat16_conversion"
10512- " ,+SPV_INTEL_joint_matrix"
10513- " ,+SPV_KHR_uniform_group_instructions"
10514- " ,+SPV_INTEL_tensor_float32_conversion"
10515- " ,+SPV_INTEL_optnone"
10516- " ,+SPV_KHR_non_semantic_info"
10517- " ,+SPV_KHR_cooperative_matrix"
10518- " ,+SPV_EXT_shader_atomic_float16_add"
10519- " ,+SPV_INTEL_fp_max_error" ;
10520-
10521- BackendArgs.push_back (TCArgs.MakeArgString (ExtArg));
10493+ // TODO: A list of SPIR-V extensions that are supported by the SPIR-V backend
10494+ // is growing. Let's postpone the decision on which extensions to enable until
10495+ // - the list is stable, and
10496+ // - we decide on a mapping of user requested extensions into backend's ones.
10497+ // Meanwhile we enable all the SPIR-V backend extensions.
10498+ BackendArgs.push_back (TCArgs.MakeArgString (" --spirv-ext=all" ));
10499+ // TODO:
10500+ // - handle -Xspirv-translator option to avoid "argument unused during
10501+ // compilation" error
10502+ // - handle --spirv-ext=+<extension> and --spirv-ext=-<extension> options
1052210503}
1052310504
1052410505// Utility function to gather all llvm-spirv options.
0 commit comments