target 298 apps/fft/fft.cpp const Target& target, target 344 apps/fft/fft.cpp vector_width = lcm(vector_width, target.natural_vector_size(v.output_types()[0])); target 428 apps/fft/fft.cpp const Target& target, target 435 apps/fft/fft.cpp if (target.arch != Target::ARM && !always_tile) { target 440 apps/fft/fft.cpp std::min(max_tile_size, target.natural_vector_size(f.output_types()[0])); target 478 apps/fft/fft.cpp const Target& target, target 498 apps/fft/fft.cpp std::tie(xT, x_tiled) = tiled_transpose(x, N1, target, prefix); target 508 apps/fft/fft.cpp target, target 513 apps/fft/fft.cpp std::tie(dft1, dft1_tiled) = tiled_transpose(dft1T, N0, target, prefix); target 523 apps/fft/fft.cpp target, target 665 apps/fft/fft.cpp const Target& target, target 704 apps/fft/fft.cpp zip_width = target.natural_vector_size(r.output_types()[0]); target 721 apps/fft/fft.cpp target, target 754 apps/fft/fft.cpp std::tie(unzippedT, unzippedT_tiled) = tiled_transpose(zipped_0, zipped_extent0, target, prefix); target 764 apps/fft/fft.cpp target, target 830 apps/fft/fft.cpp dft.vectorize(n0, target.natural_vector_size<float>()) target 831 apps/fft/fft.cpp .unroll(n0, gcd(N0 / target.natural_vector_size<float>(), 4)); target 839 apps/fft/fft.cpp .vectorize(n0z1, target.natural_vector_size<float>()); target 841 apps/fft/fft.cpp .vectorize(n0z2, target.natural_vector_size<float>()); target 843 apps/fft/fft.cpp .vectorize(n0z1, target.natural_vector_size<float>()); target 845 apps/fft/fft.cpp .vectorize(n0z2, target.natural_vector_size<float>()); target 857 apps/fft/fft.cpp const Target& target, target 893 apps/fft/fft.cpp tiled_transpose(c_zipped, zipped_extent0, target, prefix); target 903 apps/fft/fft.cpp target, target 909 apps/fft/fft.cpp zip_width = target.natural_vector_size(dft0T.output_types()[0]); target 914 apps/fft/fft.cpp std::tie(dft0, dft0_tiled) = tiled_transpose(dft0T, zip_width, target, prefix, true); target 960 apps/fft/fft.cpp target, target 1042 apps/fft/fft.cpp const Target& target, target 1044 apps/fft/fft.cpp return fft2d_c2c(x, radix_factor(N0), radix_factor(N1), sign, target, desc); target 1049 apps/fft/fft.cpp const Target& target, target 1051 apps/fft/fft.cpp return fft2d_r2c(r, radix_factor(N0), radix_factor(N1), target, desc); target 1056 apps/fft/fft.cpp const Target& target, target 1058 apps/fft/fft.cpp return fft2d_c2r(c, radix_factor(N0), radix_factor(N1), target, desc); target 50 apps/fft/fft.h const Halide::Target& target, target 59 apps/fft/fft.h const Halide::Target& target, target 66 apps/fft/fft.h const Halide::Target& target, target 109 apps/fft/fft_generator.cpp complex_result = fft2d_r2c(in, size0, size1, target, desc); target 114 apps/fft/fft_generator.cpp complex_result = fft2d_c2c(in, size0, size1, sign, target, desc); target 121 apps/fft/fft_generator.cpp real_result = fft2d_c2r(in, size0, size1, target, desc); target 123 apps/fft/fft_generator.cpp complex_result = fft2d_c2c(in, size0, size1, sign, target, desc); target 70 apps/fft/main.cpp Target target = get_jit_target_from_environment(); target 79 apps/fft/main.cpp ComplexFunc dft_in = fft2d_c2c(make_complex(in), W, H, -1, target, fwd_desc); target 80 apps/fft/main.cpp ComplexFunc dft_kernel = fft2d_c2c(make_complex(kernel), W, H, -1, target, fwd_desc); target 89 apps/fft/main.cpp ComplexFunc dft_out = fft2d_c2c(dft_filtered, W, H, 1, target, inv_desc); target 99 apps/fft/main.cpp ComplexFunc dft_in = fft2d_r2c(make_real(in), W, H, target, fwd_desc); target 100 apps/fft/main.cpp ComplexFunc dft_kernel = fft2d_r2c(make_real(kernel), W, H, target, fwd_desc); target 109 apps/fft/main.cpp filtered_r2c = fft2d_c2r(dft_filtered, W, H, target, inv_desc); target 112 apps/fft/main.cpp Buffer<float> result_c2c = filtered_c2c.realize(W, H, target); target 113 apps/fft/main.cpp Buffer<float> result_r2c = filtered_r2c.realize(W, H, target); target 157 apps/fft/main.cpp Func bench_c2c = fft2d_c2c(c2c_in, W, H, -1, target, fwd_desc); target 159 apps/fft/main.cpp Realization R_c2c = bench_c2c.realize(W, H, reps, target); target 188 apps/fft/main.cpp Func bench_r2c = fft2d_r2c(r2c_in, W, H, target, fwd_desc); target 190 apps/fft/main.cpp Realization R_r2c = bench_r2c.realize(W, H/2 + 1, reps, target); target 214 apps/fft/main.cpp Func bench_c2r = fft2d_c2r(c2r_in, W, H, target, inv_desc); target 216 apps/fft/main.cpp Realization R_c2r = bench_c2r.realize(W, H, reps, target); target 51 apps/hexagon_matmul/pipeline.cpp const Target &target = get_target(); target 53 apps/hexagon_matmul/pipeline.cpp int vector_size_u8 = target.natural_vector_size<uint8_t>(); target 55 apps/hexagon_matmul/pipeline.cpp if (target.has_feature(Target::HVX_64)) { target 58 apps/hexagon_matmul/pipeline.cpp } else if (target.has_feature(Target::HVX_128)) { target 79 apps/interpolate/interpolate.cpp Target target = get_target_from_environment(); target 80 apps/interpolate/interpolate.cpp if (target.has_gpu_feature()) { target 207 apps/interpolate/interpolate.cpp normalize.compile_jit(target); target 14 apps/linear_algebra/src/blas_l1_generators.cpp using Base::target; target 32 apps/linear_algebra/src/blas_l1_generators.cpp target.set(get_target() target 38 apps/linear_algebra/src/blas_l1_generators.cpp target.set(get_target().with_feature(Target::FMA)); target 94 apps/linear_algebra/src/blas_l1_generators.cpp using Base::target; target 109 apps/linear_algebra/src/blas_l1_generators.cpp target.set(get_target() target 115 apps/linear_algebra/src/blas_l1_generators.cpp target.set(get_target().with_feature(Target::FMA)); target 162 apps/linear_algebra/src/blas_l1_generators.cpp using Base::target; target 176 apps/linear_algebra/src/blas_l1_generators.cpp target.set(get_target() target 182 apps/linear_algebra/src/blas_l1_generators.cpp target.set(get_target().with_feature(Target::FMA)); target 14 apps/linear_algebra/src/blas_l2_generators.cpp using Base::target; target 33 apps/linear_algebra/src/blas_l2_generators.cpp target.set(get_target() target 182 apps/linear_algebra/src/blas_l2_generators.cpp using Base::target; target 199 apps/linear_algebra/src/blas_l2_generators.cpp target.set(get_target() target 14 apps/linear_algebra/src/blas_l3_generators.cpp using Base::target; target 25 apps/openglcompute/test_oglc_avg.cpp Target target = get_target_from_environment(); target 29 apps/openglcompute/test_oglc_avg.cpp if (target.has_gpu_feature() || target.has_feature(Target::OpenGLCompute)) { target 19 apps/openglcompute/test_two_kernels.cpp Target target = get_target_from_environment(); target 20 apps/openglcompute/test_two_kernels.cpp if (target.has_gpu_feature() || target.has_feature(Target::OpenGLCompute)) { target 30 apps/openglcompute/test_two_kernels.cpp if (target.has_gpu_feature() || target.has_feature(Target::OpenGLCompute)) { target 176 apps/resize/resize.cpp Target target = get_jit_target_from_environment(); target 177 apps/resize/resize.cpp final.compile_jit(target); target 70 python_bindings/python/Func.cpp void func_compile_jit1(h::Func &that, const h::Target &target = h::get_target_from_environment()) { target 71 python_bindings/python/Func.cpp that.compile_jit(target); target 78 python_bindings/python/Func.cpp const h::Target &target = h::get_target_from_environment()) { target 80 python_bindings/python/Func.cpp that.compile_to_bitcode(filename, args_vec, fn_name, target); target 88 python_bindings/python/Func.cpp const h::Target &target = h::get_target_from_environment()) { target 90 python_bindings/python/Func.cpp that.compile_to_object(filename, args_vec, fn_name, target); target 98 python_bindings/python/Func.cpp const h::Target &target = h::get_target_from_environment()) { target 100 python_bindings/python/Func.cpp that.compile_to_header(filename, args_vec, fn_name, target); target 108 python_bindings/python/Func.cpp const h::Target &target = h::get_target_from_environment()) { target 110 python_bindings/python/Func.cpp that.compile_to_assembly(filename, args_vec, fn_name, target); target 118 python_bindings/python/Func.cpp const h::Target &target = h::get_target_from_environment()) { target 120 python_bindings/python/Func.cpp that.compile_to_c(filename, args_vec, fn_name, target); target 128 python_bindings/python/Func.cpp const h::Target &target = h::get_target_from_environment()) { target 130 python_bindings/python/Func.cpp that.compile_to_file(filename_prefix, args_vec, fn_name, target); target 139 python_bindings/python/Func.cpp const h::Target &target = h::get_target_from_environment()) { target 141 python_bindings/python/Func.cpp that.compile_to_lowered_stmt(filename, args_vec, fmt, target); target 113 src/BoundsInference.cpp const Target target; target 269 src/BoundsInference.cpp const Target &target) { target 336 src/BoundsInference.cpp s = do_bounds_query(s, in_pipeline, target); target 367 src/BoundsInference.cpp s = do_bounds_query(s, in_pipeline, target); target 393 src/BoundsInference.cpp s = do_bounds_query(s, in_pipeline, target); target 473 src/BoundsInference.cpp Stmt do_bounds_query(Stmt s, const set<string> &in_pipeline, const Target &target) { target 562 src/BoundsInference.cpp if (target.has_feature(Target::MSAN)) { target 581 src/BoundsInference.cpp Expr e = func.make_call_to_extern_definition(bounds_inference_args, target); target 638 src/BoundsInference.cpp const Target &target) : target 639 src/BoundsInference.cpp funcs(f), func_bounds(fb), target(target) { target 910 src/BoundsInference.cpp body = stages[i].define_bounds(body, stage_name, op->name, in_stages, in_pipeline, inner_productions, target); target 997 src/BoundsInference.cpp const Target &target) { target 1006 src/BoundsInference.cpp s = BoundsInference(funcs, outputs, func_bounds, target).mutate(s); target 26 src/BoundsInference.h const Target &target); target 81 src/CPlusPlusMangle.cpp std::string simple_type_to_mangle_char(const std::string type_name, const Target &target) { target 182 src/CPlusPlusMangle.cpp std::string mangle_indirection_and_cvr_quals(const Type &type, const Target &target) { target 183 src/CPlusPlusMangle.cpp QualsState state(type, (target.bits == 64) ? "E" : ""); target 192 src/CPlusPlusMangle.cpp MangledNamePart mangle_inner_name(const Type &type, const Target &target, PreviousDeclarations &prev_decls) { target 195 src/CPlusPlusMangle.cpp std::string quals = mangle_indirection_and_cvr_quals(type, target); target 197 src/CPlusPlusMangle.cpp return quals + simple_type_to_mangle_char(type.handle_type->inner_name.name, target); target 229 src/CPlusPlusMangle.cpp MangledNamePart mangle_type(const Type &type, const Target &target, PreviousDeclarations &prev_decls) { target 268 src/CPlusPlusMangle.cpp target, prev_decls); target 276 src/CPlusPlusMangle.cpp const Target &target) { target 289 src/CPlusPlusMangle.cpp result += prev_decls.check_and_enter_type(mangle_type(return_type, target, prev_decls)); target 295 src/CPlusPlusMangle.cpp result += prev_decls.check_and_enter_type(mangle_type(arg.is_expr() ? arg.expr.type() : type_of<struct halide_buffer_t *>(), target, prev_decls)); target 319 src/CPlusPlusMangle.cpp std::string simple_type_to_mangle_char(const std::string type_name, const Target &target) { target 339 src/CPlusPlusMangle.cpp if (target.os == Target::OSX || target 340 src/CPlusPlusMangle.cpp target.bits == 32 || target 341 src/CPlusPlusMangle.cpp target.has_feature(Target::MinGW)) { target 347 src/CPlusPlusMangle.cpp if (target.os == Target::OSX || target 348 src/CPlusPlusMangle.cpp target.bits == 32 || target 349 src/CPlusPlusMangle.cpp target.has_feature(Target::MinGW)) { target 507 src/CPlusPlusMangle.cpp std::string mangle_inner_name(const Type &type, const Target &target, PrevPrefixes &prevs) { target 509 src/CPlusPlusMangle.cpp MangledNamePart result = simple_type_to_mangle_char(type.handle_type->inner_name.name, target); target 518 src/CPlusPlusMangle.cpp std::string mangle_type(const Type &type, const Target &target, PrevPrefixes &prevs) { target 528 src/CPlusPlusMangle.cpp if (target.os == Target::OSX || target 529 src/CPlusPlusMangle.cpp target.bits == 32 || target 530 src/CPlusPlusMangle.cpp target.has_feature(Target::MinGW)) { target 549 src/CPlusPlusMangle.cpp if (target.os == Target::OSX || target 550 src/CPlusPlusMangle.cpp target.bits == 32 || target 551 src/CPlusPlusMangle.cpp target.has_feature(Target::MinGW)) { target 569 src/CPlusPlusMangle.cpp target, prevs); target 577 src/CPlusPlusMangle.cpp const Target &target) { target 588 src/CPlusPlusMangle.cpp result += mangle_type(arg.is_expr() ? arg.expr.type() : type_of<struct halide_buffer_t *>(), target, prevs); target 598 src/CPlusPlusMangle.cpp const Target &target) { target 599 src/CPlusPlusMangle.cpp if (target.os == Target::Windows && !target.has_feature(Target::MinGW)) { target 600 src/CPlusPlusMangle.cpp return WindowsMangling::cplusplus_function_mangled_name(name, namespaces, return_type, args, target); target 602 src/CPlusPlusMangle.cpp return ItaniumABIMangling::cplusplus_function_mangled_name(name, namespaces, return_type, args, target); target 790 src/CPlusPlusMangle.cpp const Target &target, const std::string &mangled_name) { target 793 src/CPlusPlusMangle.cpp " got\n " << mangled_name << "\nfor target " << target.to_string(); target 797 src/CPlusPlusMangle.cpp void main_tests(const MangleResult *expecteds, const Target &target) { target 799 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 800 src/CPlusPlusMangle.cpp cplusplus_function_mangled_name("test_function", { }, Int(32), { }, target)); target 802 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 803 src/CPlusPlusMangle.cpp cplusplus_function_mangled_name("test_function", { "foo" }, Int(32), { }, target)); target 805 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 806 src/CPlusPlusMangle.cpp cplusplus_function_mangled_name("test_function", { "foo", "bar" }, Int(32), { }, target)); target 808 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 810 src/CPlusPlusMangle.cpp { ExternFuncArgument(42) }, target)); target 812 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 814 src/CPlusPlusMangle.cpp { ExternFuncArgument(42), ExternFuncArgument(Buffer<>()) }, target)); target 822 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 824 src/CPlusPlusMangle.cpp { ExternFuncArgument(make_zero(test_type)) }, target)); target 826 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 829 src/CPlusPlusMangle.cpp ExternFuncArgument(Buffer<>()) }, target)); target 840 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 843 src/CPlusPlusMangle.cpp ExternFuncArgument(make_zero(qual2_type)) }, target)); target 845 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 848 src/CPlusPlusMangle.cpp ExternFuncArgument(make_zero(test_type)) }, target)); target 850 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 851 src/CPlusPlusMangle.cpp cplusplus_function_mangled_name("test_function", { "std" }, Int(32), { }, target)); target 853 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 854 src/CPlusPlusMangle.cpp cplusplus_function_mangled_name("test_function", { "std", "foo" }, Int(32), { }, target)); target 860 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 862 src/CPlusPlusMangle.cpp { ExternFuncArgument(make_zero(std_test_type)) }, target)); target 868 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 870 src/CPlusPlusMangle.cpp { ExternFuncArgument(make_zero(class_type)), }, target)); target 876 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 878 src/CPlusPlusMangle.cpp { ExternFuncArgument(make_zero(union_type)), }, target)); target 884 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 886 src/CPlusPlusMangle.cpp { ExternFuncArgument(make_zero(enum_type)), }, target)); target 901 src/CPlusPlusMangle.cpp for (const auto &target : targets) { target 902 src/CPlusPlusMangle.cpp main_tests(expecteds[i++], target); target 921 src/CPlusPlusMangle.cpp for (const auto &target : targets) { target 922 src/CPlusPlusMangle.cpp check_result(all_types_by_target, expecteds_index, target, target 923 src/CPlusPlusMangle.cpp cplusplus_function_mangled_name("test_function", { }, Int(32), args, target)); target 944 src/CPlusPlusMangle.cpp for (const auto &target : targets) { target 945 src/CPlusPlusMangle.cpp check_result(many_type_subs, expecteds_index, target, target 946 src/CPlusPlusMangle.cpp cplusplus_function_mangled_name("test_function", { }, Int(32), args, target)); target 967 src/CPlusPlusMangle.cpp for (const auto &target : targets) { target 968 src/CPlusPlusMangle.cpp check_result(many_name_subs, expecteds_index, target, target 969 src/CPlusPlusMangle.cpp cplusplus_function_mangled_name("test_function", { }, Int(32), args, target)); target 992 src/CPlusPlusMangle.cpp for (const auto &target : targets) { target 993 src/CPlusPlusMangle.cpp check_result(stacked_indirections, expecteds_index, target, target 994 src/CPlusPlusMangle.cpp cplusplus_function_mangled_name("test_function", { }, Int(32), args, target)); target 1000 src/CPlusPlusMangle.cpp for (const auto &target : targets) { target 1014 src/CPlusPlusMangle.cpp MangleResult *expecteds = (target.os == Target::Windows) ? (target.bits == 64 ? all_mods_win64 : all_mods_win32) : all_mods_itanium; target 1015 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 1016 src/CPlusPlusMangle.cpp cplusplus_function_mangled_name("test_function", { }, Int(32), args, target)); target 1024 src/CPlusPlusMangle.cpp for (const auto &target : targets) { target 1030 src/CPlusPlusMangle.cpp MangleResult *expecteds = (target.os == Target::Windows) ? (target.bits == 64 ? two_void_stars_win64 : two_void_stars_win32) : two_void_stars_itanium; target 1031 src/CPlusPlusMangle.cpp check_result(expecteds, expecteds_index, target, target 1032 src/CPlusPlusMangle.cpp cplusplus_function_mangled_name("test_function", { }, Int(32), args, target)); target 22 src/CPlusPlusMangle.h const Target &target); target 26 src/CodeGen_ARM.cpp CodeGen_ARM::CodeGen_ARM(Target target) : CodeGen_Posix(target) { target 27 src/CodeGen_ARM.cpp if (target.bits == 32) { target 232 src/CodeGen_ARM.cpp if (target.bits == 32) { target 240 src/CodeGen_ARM.cpp if (target.bits == 32) { target 292 src/CodeGen_ARM.cpp if (target.bits == 32 && pattern.type == Pattern::RightShift) { target 298 src/CodeGen_ARM.cpp if (target.bits == 64 && pattern.type == Pattern::RightShift) { target 393 src/CodeGen_ARM.cpp if (target.bits == 32) { target 477 src/CodeGen_ARM.cpp target.bits == 32 && target 500 src/CodeGen_ARM.cpp if (target.bits == 32) { target 539 src/CodeGen_ARM.cpp if (target.bits == 32) { target 573 src/CodeGen_ARM.cpp if (target.bits == 32) { target 612 src/CodeGen_ARM.cpp if (target.bits == 32) { target 710 src/CodeGen_ARM.cpp if (target.bits == 32) { target 755 src/CodeGen_ARM.cpp if (target.bits == 32) { target 787 src/CodeGen_ARM.cpp if (target.bits != 64 /* Not yet implemented for aarch64 */) { target 919 src/CodeGen_ARM.cpp if (target.bits != 64 /* Not yet implemented for aarch64 */) { target 975 src/CodeGen_ARM.cpp if (target.bits == 32) { target 976 src/CodeGen_ARM.cpp if (target.has_feature(Target::ARMv7s)) { target 982 src/CodeGen_ARM.cpp if (target.os == Target::IOS) { target 991 src/CodeGen_ARM.cpp if (target.bits == 32) { target 992 src/CodeGen_ARM.cpp if (target.has_feature(Target::ARMv7s)) { target 994 src/CodeGen_ARM.cpp } if (!target.has_feature(Target::NoNEON)) { target 1000 src/CodeGen_ARM.cpp if (target.os == Target::IOS || target.os == Target::OSX) { target 1011 src/CodeGen_ARM.cpp return target.has_feature(Target::SoftFloatABI) || target 1012 src/CodeGen_ARM.cpp (target.bits == 32 && target 1013 src/CodeGen_ARM.cpp ((target.os == Target::Android) || target 1014 src/CodeGen_ARM.cpp (target.os == Target::IOS && !target.has_feature(Target::ARMv7s)))); target 74 src/CodeGen_ARM.h return target.has_feature(Target::NoNEON); target 116 src/CodeGen_C.cpp IRPrinter(s), id("$$ BAD ID $$"), target(t), output_kind(output_kind), extern_c_open(false) { target 127 src/CodeGen_C.cpp if (target.has_feature(Target::NoRuntime)) { target 169 src/CodeGen_C.cpp if (!target.has_feature(Target::NoRuntime)) { target 175 src/CodeGen_C.cpp if (target.os == Target::Windows) { target 198 src/CodeGen_C.cpp if (target.has_feature(Target::CUDA)) { target 201 src/CodeGen_C.cpp if (target.has_feature(Target::HVX_128) || target 202 src/CodeGen_C.cpp target.has_feature(Target::HVX_64)) { target 205 src/CodeGen_C.cpp if (target.has_feature(Target::Metal)) { target 208 src/CodeGen_C.cpp if (target.has_feature(Target::OpenCL)) { target 211 src/CodeGen_C.cpp if (target.has_feature(Target::OpenGLCompute)) { target 214 src/CodeGen_C.cpp if (target.has_feature(Target::OpenGL)) { target 540 src/CodeGen_C.cpp name_mangling = (target.has_feature(Target::CPlusPlusMangling) ? target 36 src/CodeGen_C.h Target target, target 58 src/CodeGen_C.h Target target; target 97 src/CodeGen_GPU_Host.cpp CodeGen_GPU_Host<CodeGen_CPU>::CodeGen_GPU_Host(Target target) : CodeGen_CPU(target) { target 102 src/CodeGen_GPU_Host.cpp if (target.has_feature(Target::OpenGL)) { target 104 src/CodeGen_GPU_Host.cpp cgdev[DeviceAPI::GLSL] = new CodeGen_OpenGL_Dev(target); target 106 src/CodeGen_GPU_Host.cpp if (target.has_feature(Target::OpenGLCompute)) { target 108 src/CodeGen_GPU_Host.cpp cgdev[DeviceAPI::OpenGLCompute] = new CodeGen_OpenGLCompute_Dev(target); target 110 src/CodeGen_GPU_Host.cpp if (target.has_feature(Target::CUDA)) { target 112 src/CodeGen_GPU_Host.cpp cgdev[DeviceAPI::CUDA] = new CodeGen_PTX_Dev(target); target 114 src/CodeGen_GPU_Host.cpp if (target.has_feature(Target::OpenCL)) { target 116 src/CodeGen_GPU_Host.cpp cgdev[DeviceAPI::OpenCL] = new CodeGen_OpenCL_Dev(target); target 118 src/CodeGen_GPU_Host.cpp if (target.has_feature(Target::Metal)) { target 120 src/CodeGen_GPU_Host.cpp cgdev[DeviceAPI::Metal] = new CodeGen_Metal_Dev(target); target 124 src/CodeGen_GPU_Host.cpp internal_error << "Requested unknown GPU target: " << target.to_string() << "\n"; target 316 src/CodeGen_GPU_Host.cpp << " which does not appear in target " << target.to_string() << "\n"; target 324 src/CodeGen_GPU_Host.cpp llvm::Type *target_size_t_type = (target.bits == 32) ? i32_t : i64_t; target 44 src/CodeGen_GPU_Host.h using CodeGen_CPU::target; target 82 src/CodeGen_Hexagon.cpp if (module.target().features_all_of({Halide::Target::HVX_128, Halide::Target::HVX_64})) { target 121 src/CodeGen_Hexagon.cpp Stmt acquire_hvx_context(Stmt stmt, const Target &target) { target 124 src/CodeGen_Hexagon.cpp Expr hvx_mode = target.has_feature(Target::HVX_128) ? 128 : 64; target 200 src/CodeGen_Hexagon.cpp body = align_loads(body, target.natural_vector_size(Int(8))); target 219 src/CodeGen_Hexagon.cpp body = optimize_hexagon_instructions(body, target); target 223 src/CodeGen_Hexagon.cpp body = acquire_hvx_context(body, target); target 237 src/CodeGen_Hexagon.cpp bool is_128B = target.has_feature(Halide::Target::HVX_128); target 703 src/CodeGen_Hexagon.cpp bool is_128B = target.has_feature(Halide::Target::HVX_128); target 835 src/CodeGen_Hexagon.cpp bool is_128B = target.has_feature(Halide::Target::HVX_128); target 1000 src/CodeGen_Hexagon.cpp bool is_128B = target.has_feature(Halide::Target::HVX_128); target 1277 src/CodeGen_Hexagon.cpp if (target.has_feature(Halide::Target::HVX_v62)) { target 1286 src/CodeGen_Hexagon.cpp if (target.has_feature(Halide::Target::HVX_128)) { target 1300 src/CodeGen_Hexagon.cpp if (target.has_feature(Halide::Target::HVX_128)) { target 1559 src/CodeGen_Hexagon.cpp if (target.has_feature(Target::HVX_v62) && (op->value.type().bits() == 8 || op->value.type().bits() == 16)) target 447 src/CodeGen_Internal.cpp const llvm::Target *target = llvm::TargetRegistry::lookupTarget(module.getTargetTriple(), error_string); target 448 src/CodeGen_Internal.cpp if (!target) { target 452 src/CodeGen_Internal.cpp internal_assert(target) << "Could not create target for " << module.getTargetTriple() << "\n"; target 459 src/CodeGen_Internal.cpp return std::unique_ptr<llvm::TargetMachine>(target->createTargetMachine(module.getTargetTriple(), target 40 src/CodeGen_LLVM.cpp std::unique_ptr<Internal::CodeGen_LLVM> cg(Internal::CodeGen_LLVM::new_for_target(module.target(), context)); target 58 src/CodeGen_LLVM.cpp #define LLVM_TARGET(target) \ target 59 src/CodeGen_LLVM.cpp inline void Initialize##target##Target() {} target 63 src/CodeGen_LLVM.cpp #define LLVM_ASM_PARSER(target) \ target 64 src/CodeGen_LLVM.cpp inline void Initialize##target##AsmParser() {} target 68 src/CodeGen_LLVM.cpp #define LLVM_ASM_PRINTER(target) \ target 69 src/CodeGen_LLVM.cpp inline void Initialize##target##AsmPrinter() {} target 73 src/CodeGen_LLVM.cpp #define InitializeTarget(target) \ target 74 src/CodeGen_LLVM.cpp LLVMInitialize##target##Target(); \ target 75 src/CodeGen_LLVM.cpp LLVMInitialize##target##TargetInfo(); \ target 76 src/CodeGen_LLVM.cpp LLVMInitialize##target##TargetMC(); \ target 77 src/CodeGen_LLVM.cpp llvm_##target##_enabled = true; target 79 src/CodeGen_LLVM.cpp #define InitializeAsmParser(target) \ target 80 src/CodeGen_LLVM.cpp LLVMInitialize##target##AsmParser(); \ target 82 src/CodeGen_LLVM.cpp #define InitializeAsmPrinter(target) \ target 83 src/CodeGen_LLVM.cpp LLVMInitialize##target##AsmPrinter(); \ target 154 src/CodeGen_LLVM.cpp target(t), target 260 src/CodeGen_LLVM.cpp CodeGen_LLVM *make_codegen(const Target &target, target 262 src/CodeGen_LLVM.cpp CodeGen_LLVM *ret = new T(target); target 273 src/CodeGen_LLVM.cpp CodeGen_LLVM *CodeGen_LLVM::new_for_target(const Target &target, target 276 src/CodeGen_LLVM.cpp if (target.features_any_of({Target::CUDA, target 282 src/CodeGen_LLVM.cpp if (target.arch == Target::X86) { target 283 src/CodeGen_LLVM.cpp return make_codegen<CodeGen_GPU_Host<CodeGen_X86>>(target, context); target 287 src/CodeGen_LLVM.cpp if (target.arch == Target::ARM) { target 288 src/CodeGen_LLVM.cpp return make_codegen<CodeGen_GPU_Host<CodeGen_ARM>>(target, context); target 292 src/CodeGen_LLVM.cpp if (target.arch == Target::MIPS) { target 293 src/CodeGen_LLVM.cpp return make_codegen<CodeGen_GPU_Host<CodeGen_MIPS>>(target, context); target 297 src/CodeGen_LLVM.cpp if (target.arch == Target::POWERPC) { target 298 src/CodeGen_LLVM.cpp return make_codegen<CodeGen_GPU_Host<CodeGen_PowerPC>>(target, context); target 303 src/CodeGen_LLVM.cpp << target.to_string() << "\n"; target 306 src/CodeGen_LLVM.cpp } else if (target.arch == Target::X86) { target 307 src/CodeGen_LLVM.cpp return make_codegen<CodeGen_X86>(target, context); target 308 src/CodeGen_LLVM.cpp } else if (target.arch == Target::ARM) { target 309 src/CodeGen_LLVM.cpp return make_codegen<CodeGen_ARM>(target, context); target 310 src/CodeGen_LLVM.cpp } else if (target.arch == Target::MIPS) { target 311 src/CodeGen_LLVM.cpp return make_codegen<CodeGen_MIPS>(target, context); target 312 src/CodeGen_LLVM.cpp } else if (target.arch == Target::POWERPC) { target 313 src/CodeGen_LLVM.cpp return make_codegen<CodeGen_PowerPC>(target, context); target 314 src/CodeGen_LLVM.cpp } else if (target.arch == Target::Hexagon) { target 315 src/CodeGen_LLVM.cpp return make_codegen<CodeGen_Hexagon>(target, context); target 319 src/CodeGen_LLVM.cpp << target.to_string() << "\n"; target 348 src/CodeGen_LLVM.cpp #define LLVM_TARGET(target) \ target 349 src/CodeGen_LLVM.cpp Initialize##target##Target(); target 353 src/CodeGen_LLVM.cpp #define LLVM_ASM_PARSER(target) \ target 354 src/CodeGen_LLVM.cpp Initialize##target##AsmParser(); target 358 src/CodeGen_LLVM.cpp #define LLVM_ASM_PRINTER(target) \ target 359 src/CodeGen_LLVM.cpp Initialize##target##AsmPrinter(); target 409 src/CodeGen_LLVM.cpp module = get_initial_module_for_target(target, context); target 446 src/CodeGen_LLVM.cpp const Target &target) { target 456 src/CodeGen_LLVM.cpp target.has_feature(Target::CPlusPlusMangling)) || target 467 src/CodeGen_LLVM.cpp names.extern_name = cplusplus_function_mangled_name(names.simple_name, namespaces, type_of<int>(), mangle_args, target); target 471 src/CodeGen_LLVM.cpp names.argv_name = cplusplus_function_mangled_name(names.argv_name, namespaces, type_of<int>(), { ExternFuncArgument(make_zero(void_star_star)) }, target); target 472 src/CodeGen_LLVM.cpp names.metadata_name = cplusplus_function_mangled_name(names.metadata_name, namespaces, type_of<const struct halide_filter_metadata_t *>(), {}, target); target 477 src/CodeGen_LLVM.cpp MangledNames get_mangled_names(const LoweredFunc &f, const Target &target) { target 478 src/CodeGen_LLVM.cpp return get_mangled_names(f.name, f.linkage, f.name_mangling, f.args, target); target 540 src/CodeGen_LLVM.cpp if (target.has_feature(Target::Matlab)) { target 601 src/CodeGen_LLVM.cpp set_function_attributes_for_target(function, target); target 670 src/CodeGen_LLVM.cpp target.has_feature(Target::MSAN)) { target 953 src/CodeGen_LLVM.cpp /* target */ create_string_constant(target.to_string()), target 2878 src/CodeGen_LLVM.cpp if (target.has_feature(Target::NoAsserts)) return; target 3001 src/CodeGen_LLVM.cpp set_function_attributes_for_target(function, target); target 64 src/CodeGen_LLVM.h static CodeGen_LLVM *new_for_target(const Target &target, target 73 src/CodeGen_LLVM.h const Target &get_target() const { return target; } target 146 src/CodeGen_LLVM.h Halide::Target target; target 21 src/CodeGen_MIPS.cpp if (target.bits == 32) { target 29 src/CodeGen_MIPS.cpp if (target.bits == 32) { target 19 src/CodeGen_Metal_Dev.h CodeGen_Metal_Dev(Target target); target 84 src/CodeGen_Metal_Dev.h Target target; target 683 src/CodeGen_OpenCL_Dev.cpp if (target.has_feature(Target::CLDoubles)) { target 19 src/CodeGen_OpenCL_Dev.h CodeGen_OpenCL_Dev(Target target); target 82 src/CodeGen_OpenCL_Dev.h Target target; target 22 src/CodeGen_OpenGLCompute_Dev.cpp CodeGen_OpenGLCompute_Dev::CodeGen_OpenGLCompute_Dev(Target target) target 23 src/CodeGen_OpenGLCompute_Dev.cpp : glc(src_stream, target) { target 264 src/CodeGen_OpenGLCompute_Dev.cpp if (target.os == Target::Android) { target 21 src/CodeGen_OpenGLCompute_Dev.h CodeGen_OpenGLCompute_Dev(Target target); target 23 src/CodeGen_OpenGL_Dev.cpp bool is_opengl_es(const Target &target) { target 27 src/CodeGen_OpenGL_Dev.cpp return (target.os == Target::Android || target 28 src/CodeGen_OpenGL_Dev.cpp target.os == Target::IOS); target 89 src/CodeGen_OpenGL_Dev.cpp CodeGen_OpenGL_Dev::CodeGen_OpenGL_Dev(const Target &target) target 90 src/CodeGen_OpenGL_Dev.cpp : target(target) { target 92 src/CodeGen_OpenGL_Dev.cpp glc = new CodeGen_GLSL(src_stream, target); target 134 src/CodeGen_OpenGL_Dev.cpp CodeGen_GLSLBase::CodeGen_GLSLBase(std::ostream &s, Target target) : CodeGen_C(s, target) { target 895 src/CodeGen_OpenGL_Dev.cpp if (is_opengl_es(target)) { target 22 src/CodeGen_OpenGL_Dev.h CodeGen_OpenGL_Dev(const Target &target); target 47 src/CodeGen_OpenGL_Dev.h Target target; target 67 src/CodeGen_PTX_Dev.cpp set_function_attributes_for_target(function, target); target 144 src/CodeGen_PTX_Dev.cpp module = get_initial_module_for_ptx_device(target, context); target 232 src/CodeGen_PTX_Dev.cpp if (target.has_feature(Target::CUDACapability50)) { target 234 src/CodeGen_PTX_Dev.cpp } else if (target.has_feature(Target::CUDACapability35)) { target 236 src/CodeGen_PTX_Dev.cpp } else if (target.has_feature(Target::CUDACapability32)) { target 238 src/CodeGen_PTX_Dev.cpp } else if (target.has_feature(Target::CUDACapability30)) { target 246 src/CodeGen_PTX_Dev.cpp if (target.features_any_of({Target::CUDACapability32, target 277 src/CodeGen_PTX_Dev.cpp const llvm::Target *target = TargetRegistry::lookupTarget(triple.str(), err_str); target 278 src/CodeGen_PTX_Dev.cpp internal_assert(target) << err_str << "\n"; target 295 src/CodeGen_PTX_Dev.cpp target_machine(target->createTargetMachine(triple.str(), target 60 src/CodeGen_Posix.cpp Expr max_size = make_const(UInt(64), target.maximum_buffer_size()); target 92 src/CodeGen_Posix.cpp if (stack_bytes > target.maximum_buffer_size()) { target 93 src/CodeGen_Posix.cpp const string str_max_size = target.has_feature(Target::LargeBuffers) ? "2^63 - 1" : "2^31 - 1"; target 102 src/CodeGen_PowerPC.cpp if (!target.has_feature(Target::VSX) && pattern.needs_vsx) { target 131 src/CodeGen_PowerPC.cpp bool vsx = target.has_feature(Target::VSX); target 132 src/CodeGen_PowerPC.cpp bool arch_2_07 = target.has_feature(Target::POWER_ARCH_2_07); target 157 src/CodeGen_PowerPC.cpp bool vsx = target.has_feature(Target::VSX); target 158 src/CodeGen_PowerPC.cpp bool arch_2_07 = target.has_feature(Target::POWER_ARCH_2_07); target 178 src/CodeGen_PowerPC.cpp if (target.bits == 32) { target 181 src/CodeGen_PowerPC.cpp if (target.has_feature(Target::POWER_ARCH_2_07)) target 183 src/CodeGen_PowerPC.cpp else if (target.has_feature(Target::VSX)) target 198 src/CodeGen_PowerPC.cpp enable = target.has_feature(Target::VSX) ? "+" : "-"; target 202 src/CodeGen_PowerPC.cpp enable = target.has_feature(Target::POWER_ARCH_2_07) ? "+" : "-"; target 99 src/CodeGen_X86.cpp slice_size = target.natural_vector_size(t); target 134 src/CodeGen_X86.cpp slice_size = target.natural_vector_size(t); target 183 src/CodeGen_X86.cpp slice_size = target.natural_vector_size(t); target 266 src/CodeGen_X86.cpp if (!target.has_feature(pattern.feature)) { target 298 src/CodeGen_X86.cpp !target.has_feature(Target::AVX)) { target 343 src/CodeGen_X86.cpp bool use_sse_41 = target.has_feature(Target::SSE41); target 367 src/CodeGen_X86.cpp bool use_sse_41 = target.has_feature(Target::SSE41); target 387 src/CodeGen_X86.cpp if (need_workaround && target.has_feature(Target::AVX2) && target 414 src/CodeGen_X86.cpp if (target.has_feature(Target::AVX512_Cannonlake)) return "cannonlake"; target 415 src/CodeGen_X86.cpp if (target.has_feature(Target::AVX512_Skylake)) return "skylake-avx512"; target 416 src/CodeGen_X86.cpp if (target.has_feature(Target::AVX512_KNL)) return "knl"; target 418 src/CodeGen_X86.cpp if (target.has_feature(Target::AVX2)) return "haswell"; target 419 src/CodeGen_X86.cpp if (target.has_feature(Target::AVX)) return "corei7-avx"; target 421 src/CodeGen_X86.cpp if (target.has_feature(Target::SSE41)) return "penryn"; target 429 src/CodeGen_X86.cpp if (target.has_feature(Target::FMA)) { target 433 src/CodeGen_X86.cpp if (target.has_feature(Target::FMA4)) { target 437 src/CodeGen_X86.cpp if (target.has_feature(Target::F16C)) { target 442 src/CodeGen_X86.cpp if (target.has_feature(Target::AVX512) || target 443 src/CodeGen_X86.cpp target.has_feature(Target::AVX512_KNL) || target 444 src/CodeGen_X86.cpp target.has_feature(Target::AVX512_Skylake) || target 445 src/CodeGen_X86.cpp target.has_feature(Target::AVX512_Cannonlake)) { target 448 src/CodeGen_X86.cpp if (target.has_feature(Target::AVX512_KNL)) { target 451 src/CodeGen_X86.cpp if (target.has_feature(Target::AVX512_Skylake) || target 452 src/CodeGen_X86.cpp target.has_feature(Target::AVX512_Cannonlake)) { target 455 src/CodeGen_X86.cpp if (target.has_feature(Target::AVX512_Cannonlake)) { target 468 src/CodeGen_X86.cpp if (target.has_feature(Target::AVX512) || target 469 src/CodeGen_X86.cpp target.has_feature(Target::AVX512_Skylake) || target 470 src/CodeGen_X86.cpp target.has_feature(Target::AVX512_KNL) || target 471 src/CodeGen_X86.cpp target.has_feature(Target::AVX512_Cannonlake)) { target 473 src/CodeGen_X86.cpp } else if (target.has_feature(Target::AVX) || target 474 src/CodeGen_X86.cpp target.has_feature(Target::AVX2)) { target 33 src/DeviceInterface.cpp const Target &target, target 36 src/DeviceInterface.cpp JITSharedRuntime::get(nullptr, target.with_feature(Target::JIT))); target 84 src/DeviceInterface.cpp DeviceAPI get_default_device_api_for_target(const Target &target) { target 85 src/DeviceInterface.cpp if (target.has_feature(Target::Metal)) { target 87 src/DeviceInterface.cpp } else if (target.has_feature(Target::OpenCL)) { target 89 src/DeviceInterface.cpp } else if (target.has_feature(Target::CUDA)) { target 91 src/DeviceInterface.cpp } else if (target.has_feature(Target::OpenGLCompute)) { target 93 src/DeviceInterface.cpp } else if (target.has_feature(Target::OpenGL)) { target 108 src/DeviceInterface.cpp Target target(get_host_target()); target 110 src/DeviceInterface.cpp if (lookup_runtime_routine("halide_device_release", target, fn)) { target 124 src/DeviceInterface.cpp Target target(get_host_target()); target 126 src/DeviceInterface.cpp if (lookup_runtime_routine("halide_copy_to_host", target, fn)) { target 142 src/DeviceInterface.cpp Target target(get_host_target()); target 144 src/DeviceInterface.cpp if (lookup_runtime_routine("halide_copy_to_device", target, fn)) { target 155 src/DeviceInterface.cpp Target target(get_host_target()); target 157 src/DeviceInterface.cpp if (lookup_runtime_routine("halide_device_sync", target, fn)) { target 167 src/DeviceInterface.cpp Target target(get_host_target()); target 169 src/DeviceInterface.cpp if (lookup_runtime_routine("halide_device_malloc", target, fn)) { target 182 src/DeviceInterface.cpp Target target(get_host_target()); target 184 src/DeviceInterface.cpp if (lookup_runtime_routine("halide_device_free", target, fn)) { target 219 src/DeviceInterface.cpp Target target(get_host_target()); target 220 src/DeviceInterface.cpp target.set_feature(Target::OpenGL); target 222 src/DeviceInterface.cpp if (lookup_runtime_routine("halide_opengl_wrap_texture", target, fn)) { target 230 src/DeviceInterface.cpp Target target(get_host_target()); target 231 src/DeviceInterface.cpp target.set_feature(Target::OpenGL); target 233 src/DeviceInterface.cpp if (lookup_runtime_routine("halide_opengl_detach_texture", target, fn)) { target 2731 src/Func.cpp Realization Func::realize(std::vector<int32_t> sizes, const Target &target) { target 2733 src/Func.cpp return pipeline().realize(sizes, target); target 2736 src/Func.cpp Realization Func::realize(int x_size, int y_size, int z_size, int w_size, const Target &target) { target 2737 src/Func.cpp return realize({x_size, y_size, z_size, w_size}, target); target 2740 src/Func.cpp Realization Func::realize(int x_size, int y_size, int z_size, const Target &target) { target 2741 src/Func.cpp return realize({x_size, y_size, z_size}, target); target 2744 src/Func.cpp Realization Func::realize(int x_size, int y_size, const Target &target) { target 2745 src/Func.cpp return realize({x_size, y_size}, target); target 2748 src/Func.cpp Realization Func::realize(int x_size, const Target &target) { target 2749 src/Func.cpp return realize(std::vector<int>{x_size}, target); target 2752 src/Func.cpp Realization Func::realize(const Target &target) { target 2753 src/Func.cpp return realize(std::vector<int>{}, target); target 2808 src/Func.cpp Module Func::compile_to_module(const vector<Argument> &args, const std::string &fn_name, const Target &target) { target 2809 src/Func.cpp return pipeline().compile_to_module(args, fn_name, target); target 2816 src/Func.cpp const Target &target) { target 2817 src/Func.cpp pipeline().compile_to(output_files, args, fn_name, target); target 2821 src/Func.cpp const Target &target) { target 2822 src/Func.cpp pipeline().compile_to_bitcode(filename, args, fn_name, target); target 2826 src/Func.cpp const Target &target) { target 2827 src/Func.cpp pipeline().compile_to_bitcode(filename, args, "", target); target 2831 src/Func.cpp const Target &target) { target 2832 src/Func.cpp pipeline().compile_to_llvm_assembly(filename, args, fn_name, target); target 2836 src/Func.cpp const Target &target) { target 2837 src/Func.cpp pipeline().compile_to_llvm_assembly(filename, args, "", target); target 2841 src/Func.cpp const string &fn_name, const Target &target) { target 2842 src/Func.cpp pipeline().compile_to_object(filename, args, fn_name, target); target 2846 src/Func.cpp const Target &target) { target 2847 src/Func.cpp pipeline().compile_to_object(filename, args, "", target); target 2851 src/Func.cpp const string &fn_name, const Target &target) { target 2852 src/Func.cpp pipeline().compile_to_header(filename, args, fn_name, target); target 2856 src/Func.cpp const string &fn_name, const Target &target) { target 2857 src/Func.cpp pipeline().compile_to_c(filename, args, fn_name, target); target 2863 src/Func.cpp const Target &target) { target 2864 src/Func.cpp pipeline().compile_to_lowered_stmt(filename, args, fmt, target); target 2874 src/Func.cpp const Target &target) { target 2875 src/Func.cpp pipeline().compile_to_file(filename_prefix, args, fn_name, target); target 2881 src/Func.cpp const Target &target) { target 2882 src/Func.cpp pipeline().compile_to_static_library(filename_prefix, args, fn_name, target); target 2892 src/Func.cpp const Target &target) { target 2893 src/Func.cpp pipeline().compile_to_assembly(filename, args, fn_name, target); target 2896 src/Func.cpp void Func::compile_to_assembly(const string &filename, const vector<Argument> &args, const Target &target) { target 2897 src/Func.cpp pipeline().compile_to_assembly(filename, args, "", target); target 2943 src/Func.cpp void Func::realize(Realization dst, const Target &target) { target 2944 src/Func.cpp pipeline().realize(dst, target); target 2951 src/Func.cpp void *Func::compile_jit(const Target &target) { target 2952 src/Func.cpp return pipeline().compile_jit(target); target 569 src/Func.h EXPORT Realization realize(std::vector<int32_t> sizes, const Target &target = Target()); target 571 src/Func.h const Target &target = Target()); target 573 src/Func.h const Target &target = Target()); target 575 src/Func.h const Target &target = Target()); target 577 src/Func.h const Target &target = Target()); target 578 src/Func.h EXPORT Realization realize(const Target &target = Target()); target 587 src/Func.h EXPORT void realize(Realization dst, const Target &target = Target()); target 605 src/Func.h const Target &target = get_target_from_environment()); target 607 src/Func.h const Target &target = get_target_from_environment()); target 616 src/Func.h const Target &target = get_target_from_environment()); target 618 src/Func.h const Target &target = get_target_from_environment()); target 628 src/Func.h const Target &target = get_target_from_environment()); target 630 src/Func.h const Target &target = get_target_from_environment()); target 641 src/Func.h const Target &target = get_target_from_environment()); target 650 src/Func.h const Target &target = get_target_from_environment()); target 652 src/Func.h const Target &target = get_target_from_environment()); target 662 src/Func.h const Target &target = get_target_from_environment()); target 670 src/Func.h const Target &target = get_target_from_environment()); target 683 src/Func.h const Target &target = get_target_from_environment()); target 691 src/Func.h const Target &target = get_target_from_environment()); target 707 src/Func.h const Target &target = get_target_from_environment()); target 716 src/Func.h const Target &target = get_target_from_environment()); target 726 src/Func.h EXPORT void *compile_jit(const Target &target = get_jit_target_from_environment()); target 813 src/Function.cpp const Target &target) const { target 819 src/Function.cpp call_type = (target.has_feature(Target::CPlusPlusMangling) ? target 54 src/Generator.cpp Outputs compute_outputs(const Target &target, target 57 src/Generator.cpp const bool is_windows_coff = target.os == Target::Windows && target 58 src/Generator.cpp !target.has_feature(Target::MinGW); target 952 src/Generator.cpp (const std::string &name, const Target &target) -> Module { target 957 src/Generator.cpp auto gen = GeneratorRegistry::create(generator_name, JITGeneratorContext(target), sub_generator_args); target 1063 src/Generator.cpp target.set(context.get_target()); target 1435 src/Generator.cpp Module result = pipeline.compile_to_module(filter_arguments, function_name, target, linkage_type); target 2162 src/Generator.h : target(t) target 2165 src/Generator.h Target get_target() const override { return target; } target 2172 src/Generator.h const Target target; target 2226 src/Generator.h GeneratorParam<Target> target{ "target", Halide::get_host_target() }; target 2244 src/Generator.h Target get_target() const override { return target; } target 477 src/HexagonOffload.cpp HexagonLinker(const Target &target) { target 478 src/HexagonOffload.cpp if (target.has_feature(Target::HVX_v62)) { target 704 src/HexagonOffload.cpp if (!device_code.target().has_feature(Target::NoAsserts)) { target 833 src/HexagonOffload.cpp Target target(Target::NoOS, Target::Hexagon, 32); target 850 src/HexagonOffload.cpp target = target.with_feature(i); target 854 src/HexagonOffload.cpp Module hexagon_module("hexagon_code", target); target 895 src/HexagonOffload.cpp Elf::HexagonLinker linker(device_code.target()); target 175 src/HexagonOptimize.cpp Expr apply_patterns(Expr x, const vector<Pattern> &patterns, const Target &target, IRMutator *op_mutator) { target 180 src/HexagonOptimize.cpp if ((p.flags & (Pattern::v62)) && !target.has_feature(Target::HVX_v62)) target 274 src/HexagonOptimize.cpp Expr apply_commutative_patterns(const T *op, const vector<Pattern> &patterns, const Target &target, IRMutator *mutator) { target 275 src/HexagonOptimize.cpp Expr ret = apply_patterns(op, patterns, target, mutator); target 280 src/HexagonOptimize.cpp ret = apply_patterns(commuted, patterns, target, mutator); target 292 src/HexagonOptimize.cpp Target target; target 343 src/HexagonOptimize.cpp Expr new_expr = apply_commutative_patterns(op, scalar_muls, target, this); target 349 src/HexagonOptimize.cpp new_expr = apply_commutative_patterns(op, muls, target, this); target 664 src/HexagonOptimize.cpp Expr new_expr = apply_commutative_patterns(op, adds, target, this); target 689 src/HexagonOptimize.cpp Expr new_expr = apply_patterns(op, subs, target, this); target 857 src/HexagonOptimize.cpp Expr new_expr = apply_patterns(cast, casts, target, this); target 910 src/HexagonOptimize.cpp target = t; target 58 src/IRPrinter.cpp stream << "Target = " << m.target().to_string() << "\n"; target 28 src/InjectHostDevBufferCopies.cpp DeviceAPI fixup_device_api(DeviceAPI device_api, const Target &target) { target 30 src/InjectHostDevBufferCopies.cpp if (target.has_feature(Target::Metal)) { target 32 src/InjectHostDevBufferCopies.cpp } else if (target.has_feature(Target::OpenCL)) { target 34 src/InjectHostDevBufferCopies.cpp } else if (target.has_feature(Target::CUDA)) { target 36 src/InjectHostDevBufferCopies.cpp } else if (target.has_feature(Target::OpenGLCompute)) { target 45 src/InjectHostDevBufferCopies.cpp bool different_device_api(DeviceAPI device_api, DeviceAPI stmt_api, const Target &target) { target 46 src/InjectHostDevBufferCopies.cpp device_api = fixup_device_api(device_api, target); target 47 src/InjectHostDevBufferCopies.cpp stmt_api = fixup_device_api(stmt_api, target); target 58 src/InjectHostDevBufferCopies.cpp const Target ⌖ target 72 src/InjectHostDevBufferCopies.cpp if (different_device_api(device_api, op->device_api, target)) { target 76 src/InjectHostDevBufferCopies.cpp device_api = fixup_device_api(op->device_api, target); target 103 src/InjectHostDevBufferCopies.cpp different_device_api(device_api, internal[op->name], target)) { target 111 src/InjectHostDevBufferCopies.cpp different_device_api(device_api, internal[op->name], target)) { target 125 src/InjectHostDevBufferCopies.cpp FindBuffersToTrack(const Target &t) : target(t), device_api(DeviceAPI::Host) {} target 187 src/InjectHostDevBufferCopies.cpp const Target ⌖ target 732 src/InjectHostDevBufferCopies.cpp if (different_device_api(device_api, op->device_api, target)) { target 736 src/InjectHostDevBufferCopies.cpp device_api = fixup_device_api(op->device_api, target); target 752 src/InjectHostDevBufferCopies.cpp InjectBufferCopies(const set<string> &i, const Target &t) : loop_level(""), buffers_to_track(i), target(t), device_api(DeviceAPI::Host) {} target 247 src/JITModule.cpp std::vector<JITModule> shared_runtime = JITSharedRuntime::get(llvm_module.get(), m.target()); target 249 src/JITModule.cpp compile_module(std::move(llvm_module), fn.name, m.target(), deps_with_runtime); target 252 src/JITModule.cpp void JITModule::compile_module(std::unique_ptr<llvm::Module> m, const string &function_name, const Target &target, target 307 src/JITModule.cpp if (target.arch == Target::X86) { target 391 src/JITModule.cpp static bool module_already_in_graph(const JITModuleContents *start, const JITModuleContents *target, std::set <const JITModuleContents *> &already_seen) { target 392 src/JITModule.cpp if (start == target) { target 401 src/JITModule.cpp if (module_already_in_graph(dep, target, already_seen)) { target 637 src/JITModule.cpp JITModule &make_module(llvm::Module *for_module, Target target, target 644 src/JITModule.cpp target.set_feature(Target::JIT); target 646 src/JITModule.cpp Target one_gpu(target); target 708 src/JITModule.cpp runtime.compile_module(std::move(module), "", target, deps, halide_exports); target 776 src/JITModule.cpp std::vector<JITModule> JITSharedRuntime::get(llvm::Module *for_module, const Target &target, bool create) { target 781 src/JITModule.cpp JITModule m = make_module(for_module, target, MainShared, result, create); target 788 src/JITModule.cpp if (target.has_feature(Target::OpenCL)) { target 789 src/JITModule.cpp JITModule m = make_module(for_module, target, OpenCL, result, create); target 794 src/JITModule.cpp if (target.has_feature(Target::Metal)) { target 795 src/JITModule.cpp JITModule m = make_module(for_module, target, Metal, result, create); target 800 src/JITModule.cpp if (target.has_feature(Target::CUDA)) { target 801 src/JITModule.cpp JITModule m = make_module(for_module, target, CUDA, result, create); target 806 src/JITModule.cpp if (target.has_feature(Target::OpenGL)) { target 807 src/JITModule.cpp JITModule m = make_module(for_module, target, OpenGL, result, create); target 812 src/JITModule.cpp if (target.has_feature(Target::OpenGLCompute)) { target 813 src/JITModule.cpp JITModule m = make_module(for_module, target, OpenGLCompute, result, create); target 818 src/JITModule.cpp if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 819 src/JITModule.cpp JITModule m = make_module(for_module, target, Hexagon, result, create); target 112 src/JITModule.h const std::string &function_name, const Target &target, target 146 src/JITModule.h EXPORT static std::vector<JITModule> get(llvm::Module *m, const Target &target, bool create = true); target 90 src/LLVM_Output.cpp void create_static_library(const std::vector<std::string> &src_files, const Target &target, target 119 src/LLVM_Output.cpp const auto kind = Internal::get_triple_for_target(target).isOSDarwin() target 54 src/LLVM_Output.h EXPORT void create_static_library(const std::vector<std::string> &src_files, const Target &target, target 222 src/LLVM_Runtime_Linker.cpp llvm::DataLayout get_data_layout_for_target(Target target) { target 223 src/LLVM_Runtime_Linker.cpp if (target.arch == Target::X86) { target 224 src/LLVM_Runtime_Linker.cpp if (target.bits == 32) { target 225 src/LLVM_Runtime_Linker.cpp if (target.os == Target::OSX) { target 227 src/LLVM_Runtime_Linker.cpp } else if (target.os == Target::Windows && !target.has_feature(Target::JIT)) { target 229 src/LLVM_Runtime_Linker.cpp } else if (target.os == Target::Windows) { target 236 src/LLVM_Runtime_Linker.cpp if (target.os == Target::OSX) { target 238 src/LLVM_Runtime_Linker.cpp } else if (target.os == Target::Windows && !target.has_feature(Target::JIT)) { target 240 src/LLVM_Runtime_Linker.cpp } else if (target.os == Target::Windows) { target 246 src/LLVM_Runtime_Linker.cpp } else if (target.arch == Target::ARM) { target 247 src/LLVM_Runtime_Linker.cpp if (target.bits == 32) { target 248 src/LLVM_Runtime_Linker.cpp if (target.os == Target::IOS) { target 254 src/LLVM_Runtime_Linker.cpp if (target.os == Target::IOS) { target 264 src/LLVM_Runtime_Linker.cpp } else if (target.arch == Target::MIPS) { target 265 src/LLVM_Runtime_Linker.cpp if (target.bits == 32) { target 270 src/LLVM_Runtime_Linker.cpp } else if (target.arch == Target::POWERPC) { target 271 src/LLVM_Runtime_Linker.cpp if (target.bits == 32) { target 276 src/LLVM_Runtime_Linker.cpp } else if (target.arch == Target::Hexagon) { target 281 src/LLVM_Runtime_Linker.cpp internal_error << "Bad target arch: " << target.arch << "\n"; target 290 src/LLVM_Runtime_Linker.cpp llvm::Triple get_triple_for_target(const Target &target) { target 293 src/LLVM_Runtime_Linker.cpp if (target.arch == Target::X86) { target 294 src/LLVM_Runtime_Linker.cpp if (target.bits == 32) { target 297 src/LLVM_Runtime_Linker.cpp user_assert(target.bits == 64) << "Target must be 32- or 64-bit.\n"; target 301 src/LLVM_Runtime_Linker.cpp if (target.os == Target::Linux) { target 304 src/LLVM_Runtime_Linker.cpp } else if (target.os == Target::OSX) { target 307 src/LLVM_Runtime_Linker.cpp } else if (target.os == Target::Windows) { target 310 src/LLVM_Runtime_Linker.cpp if (target.has_feature(Target::MinGW)) { target 315 src/LLVM_Runtime_Linker.cpp if (target.has_feature(Target::JIT)) { target 319 src/LLVM_Runtime_Linker.cpp } else if (target.os == Target::Android) { target 322 src/LLVM_Runtime_Linker.cpp } else if (target.os == Target::IOS) { target 327 src/LLVM_Runtime_Linker.cpp } else if (target.arch == Target::ARM) { target 328 src/LLVM_Runtime_Linker.cpp if (target.bits == 32) { target 329 src/LLVM_Runtime_Linker.cpp if (target.has_feature(Target::ARMv7s)) { target 335 src/LLVM_Runtime_Linker.cpp user_assert(target.bits == 64) << "Target bits must be 32 or 64\n"; target 343 src/LLVM_Runtime_Linker.cpp if (target.os == Target::Android) { target 346 src/LLVM_Runtime_Linker.cpp } else if (target.os == Target::IOS) { target 349 src/LLVM_Runtime_Linker.cpp } else if (target.os == Target::Linux) { target 355 src/LLVM_Runtime_Linker.cpp } else if (target.arch == Target::MIPS) { target 357 src/LLVM_Runtime_Linker.cpp if (target.bits == 32) { target 360 src/LLVM_Runtime_Linker.cpp user_assert(target.bits == 64) << "Target must be 32- or 64-bit.\n"; target 364 src/LLVM_Runtime_Linker.cpp if (target.os == Target::Android) { target 370 src/LLVM_Runtime_Linker.cpp } else if (target.arch == Target::POWERPC) { target 373 src/LLVM_Runtime_Linker.cpp user_assert(target.os == Target::Linux) << "PowerPC target is Linux-only.\n"; target 377 src/LLVM_Runtime_Linker.cpp if (target.bits == 32) { target 381 src/LLVM_Runtime_Linker.cpp user_assert(target.bits == 64) << "Target must be 32- or 64-bit.\n"; target 387 src/LLVM_Runtime_Linker.cpp } else if (target.arch == Target::Hexagon) { target 392 src/LLVM_Runtime_Linker.cpp internal_error << "Bad target arch: " << target.arch << "\n"; target 898 src/LLVM_Runtime_Linker.cpp std::unique_ptr<llvm::Module> get_initial_module_for_ptx_device(Target target, llvm::LLVMContext *c) { target 906 src/LLVM_Runtime_Linker.cpp if (target.has_feature(Target::CUDACapability35)) { target 908 src/LLVM_Runtime_Linker.cpp } else if (target.features_any_of({Target::CUDACapability32, target 912 src/LLVM_Runtime_Linker.cpp } else if (target.has_feature(Target::CUDACapability30)) { target 919 src/LLVM_Runtime_Linker.cpp link_modules(modules, target); target 21 src/LLVM_Runtime_Linker.h llvm::Triple get_triple_for_target(const Target &target); target 40 src/Module.cpp const Target &target, target 42 src/Module.cpp const char* ext = (target.os == Target::Windows && !target.has_feature(Target::MinGW)) ? ".obj" : ".o"; target 96 src/Module.cpp uint64_t target_feature_mask(const Target &target) { target 100 src/Module.cpp if (target.has_feature((Target::Feature) i)) { target 112 src/Module.cpp Target target; target 151 src/Module.cpp Module::Module(const std::string &name, const Target &target) : target 154 src/Module.cpp contents->target = target; target 158 src/Module.cpp return contents->target; target 212 src/Module.cpp Module output(name, modules.front().target()); target 217 src/Module.cpp if (output.target() != input.target()) { target 219 src/Module.cpp << output.name() << ", " << output.target().to_string() target 221 src/Module.cpp << input.name() << ", " << input.target().to_string() << ")\n"; target 241 src/Module.cpp if (target().arch == Target::Hexagon) { target 270 src/Module.cpp Module lowered_module(name(), target()); target 334 src/Module.cpp std::string object_name = temp_dir.add_temp_object_file(output_files.static_library_name, "", target()); target 341 src/Module.cpp Target base_target(target().os, target().arch, target().bits); target 364 src/Module.cpp target(), target 365 src/Module.cpp target().has_feature(Target::CPlusPlusMangling) ? target 374 src/Module.cpp target(), target 375 src/Module.cpp target().has_feature(Target::CPlusPlusMangling) ? target 453 src/Module.cpp for (const Target &target : targets) { target 455 src/Module.cpp if (target.os != base_target.os || target 456 src/Module.cpp target.arch != base_target.arch || target 457 src/Module.cpp target.bits != base_target.bits) { target 470 src/Module.cpp if (target.has_feature(f) != base_target.has_feature(f)) { target 478 src/Module.cpp std::string suffix = replace_all(target.to_string(), "-", "_"); target 488 src/Module.cpp Target sub_fn_target = target.with_feature(Target::NoRuntime); target 500 src/Module.cpp sub_out.object_name = temp_dir.add_temp_object_file(output_files.static_library_name, suffix, target); target 506 src/Module.cpp const uint64_t cur_target_mask = target_feature_mask(target); target 507 src/Module.cpp Expr can_use = (target == base_target) ? target 87 src/Module.h EXPORT Module(const std::string &name, const Target &target); target 90 src/Module.h EXPORT const Target &target() const; target 32 src/Pipeline.cpp Outputs static_library_outputs(const string &filename_prefix, const Target &target) { target 34 src/Pipeline.cpp if (target.os == Target::Windows && !target.has_feature(Target::MinGW)) { target 154 src/Pipeline.cpp const Target &target) { target 162 src/Pipeline.cpp compile_to_module(args, fn_name, target).compile(output_files); target 169 src/Pipeline.cpp const Target &target) { target 170 src/Pipeline.cpp Module m = compile_to_module(args, fn_name, target); target 177 src/Pipeline.cpp const Target &target) { target 178 src/Pipeline.cpp Module m = compile_to_module(args, fn_name, target); target 185 src/Pipeline.cpp const Target &target) { target 186 src/Pipeline.cpp Module m = compile_to_module(args, fn_name, target); target 187 src/Pipeline.cpp const char* ext = target.os == Target::Windows && !target.has_feature(Target::MinGW) ? ".obj" : ".o"; target 194 src/Pipeline.cpp const Target &target) { target 195 src/Pipeline.cpp Module m = compile_to_module(args, fn_name, target); target 202 src/Pipeline.cpp const Target &target) { target 203 src/Pipeline.cpp Module m = compile_to_module(args, fn_name, target); target 211 src/Pipeline.cpp const Target &target) { target 212 src/Pipeline.cpp Module m = compile_to_module(args, fn_name, target); target 224 src/Pipeline.cpp const Target &target) { target 225 src/Pipeline.cpp Module m = compile_to_module(args, "", target); target 238 src/Pipeline.cpp const Target &target) { target 239 src/Pipeline.cpp Module m = compile_to_module(args, fn_name, target); target 240 src/Pipeline.cpp Outputs outputs = static_library_outputs(filename_prefix, target); target 247 src/Pipeline.cpp auto module_producer = [this, &args](const std::string &name, const Target &target) -> Module { target 248 src/Pipeline.cpp return compile_to_module(args, name, target); target 257 src/Pipeline.cpp const Target &target) { target 258 src/Pipeline.cpp Module m = compile_to_module(args, fn_name, target); target 261 src/Pipeline.cpp if (target.os == Target::Windows && !target.has_feature(Target::MinGW)) { target 306 src/Pipeline.cpp const Target &target, target 321 src/Pipeline.cpp const bool requires_user_context = target.has_feature(Target::UserContext); target 334 src/Pipeline.cpp bool same_compile = !old_module.functions().empty() && old_module.target() == target; target 362 src/Pipeline.cpp contents->module = lower(contents->outputs, new_fn_name, target, lowering_args, linkage_type, custom_passes); target 383 src/Pipeline.cpp Target target(target_arg); target 384 src/Pipeline.cpp target.set_feature(Target::JIT); target 385 src/Pipeline.cpp target.set_feature(Target::UserContext); target 391 src/Pipeline.cpp if (contents->jit_target == target && target 397 src/Pipeline.cpp contents->jit_target = target; target 415 src/Pipeline.cpp Module module = compile_to_module(args, name, target).resolve_submodules(); target 507 src/Pipeline.cpp const Target &target) { target 516 src/Pipeline.cpp realize(r, target); target 524 src/Pipeline.cpp const Target &target) { target 525 src/Pipeline.cpp return realize({x_size, y_size, z_size, w_size}, target); target 529 src/Pipeline.cpp const Target &target) { target 530 src/Pipeline.cpp return realize({x_size, y_size, z_size}, target); target 534 src/Pipeline.cpp const Target &target) { target 535 src/Pipeline.cpp return realize({x_size, y_size}, target); target 539 src/Pipeline.cpp const Target &target) { target 543 src/Pipeline.cpp return realize(v, target); target 546 src/Pipeline.cpp Realization Pipeline::realize(const Target &target) { target 547 src/Pipeline.cpp return realize(vector<int32_t>(), target); target 656 src/Pipeline.cpp vector<const void *> Pipeline::prepare_jit_call_arguments(Realization dst, const Target &target) { target 659 src/Pipeline.cpp compile_jit(target); target 739 src/Pipeline.cpp Pipeline::make_externs_jit_module(const Target &target, target 754 src/Pipeline.cpp pipeline.compile_jit(target); target 788 src/Pipeline.cpp Target target = t; target 791 src/Pipeline.cpp debug(2) << "Realizing Pipeline for " << target.to_string() << "\n"; target 800 src/Pipeline.cpp if (target.os == Target::OSUnknown) { target 803 src/Pipeline.cpp target = contents->jit_target; target 806 src/Pipeline.cpp target = get_jit_target_from_environment(); target 810 src/Pipeline.cpp vector<const void *> args = prepare_jit_call_arguments(dst, target); target 878 src/Pipeline.cpp if (target.has_feature(Target::Profile)) { target 898 src/Pipeline.cpp Target target = get_jit_target_from_environment(); target 900 src/Pipeline.cpp vector<const void *> args = prepare_jit_call_arguments(dst, target); target 61 src/Pipeline.h std::vector<const void *> prepare_jit_call_arguments(Realization dst, const Target &target); target 63 src/Pipeline.h static std::vector<Internal::JITModule> make_externs_jit_module(const Target &target, target 88 src/Pipeline.h const Target &target); target 97 src/Pipeline.h const Target &target = get_target_from_environment()); target 106 src/Pipeline.h const Target &target = get_target_from_environment()); target 116 src/Pipeline.h const Target &target = get_target_from_environment()); target 127 src/Pipeline.h const Target &target = get_target_from_environment()); target 137 src/Pipeline.h const Target &target = get_target_from_environment()); target 146 src/Pipeline.h const Target &target = get_target_from_environment()); target 154 src/Pipeline.h const Target &target = get_target_from_environment()); target 166 src/Pipeline.h const Target &target = get_target_from_environment()); target 173 src/Pipeline.h const Target &target = get_target_from_environment()); target 190 src/Pipeline.h const Target &target = get_target_from_environment(), target 201 src/Pipeline.h EXPORT void *compile_jit(const Target &target = get_jit_target_from_environment()); target 345 src/Pipeline.h EXPORT Realization realize(std::vector<int32_t> sizes, const Target &target = Target()); target 347 src/Pipeline.h const Target &target = Target()); target 349 src/Pipeline.h const Target &target = Target()); target 351 src/Pipeline.h const Target &target = Target()); target 353 src/Pipeline.h const Target &target = Target()); target 354 src/Pipeline.h EXPORT Realization realize(const Target &target = Target()); target 366 src/Pipeline.h EXPORT void realize(Realization dst, const Target &target = Target()); target 186 src/PrintLoopNest.cpp Target target = get_host_target(); target 188 src/PrintLoopNest.cpp target.set_feature(target_feature_for_device_api(DeviceAPI(api))); target 193 src/PrintLoopNest.cpp Stmt s = schedule_functions(outputs, order, env, target, any_memoized); target 326 src/ScheduleFunctions.cpp Stmt build_produce(Function f, const Target &target) { target 451 src/ScheduleFunctions.cpp if (target.has_feature(Target::MSAN)) { target 487 src/ScheduleFunctions.cpp Expr e = f.make_call_to_extern_definition(extern_call_args, target); target 531 src/ScheduleFunctions.cpp pair<Stmt, Stmt> build_production(Function func, const Target &target) { target 532 src/ScheduleFunctions.cpp Stmt produce = build_produce(func, target); target 613 src/ScheduleFunctions.cpp const Target ⌖ target 625 src/ScheduleFunctions.cpp pair<Stmt, Stmt> realization = build_production(func, target); target 669 src/ScheduleFunctions.cpp if (target.has_feature(Target::NoAsserts)) { target 978 src/ScheduleFunctions.cpp bool validate_schedule(Function f, Stmt s, const Target &target, bool is_output, const map<string, Function> &env) { target 1031 src/ScheduleFunctions.cpp if (!target.supports_device_api(d.device_api)) { target 1035 src/ScheduleFunctions.cpp << target.to_string() << "\n"; target 1148 src/ScheduleFunctions.cpp const Target &target, target 1164 src/ScheduleFunctions.cpp bool necessary = validate_schedule(f, s, target, is_output, env); target 1182 src/ScheduleFunctions.cpp InjectRealization injector(f, is_output, target); target 28 src/ScheduleFunctions.h const Target &target, target 11 src/SelectGPUAPI.cpp Target target; target 34 src/SelectGPUAPI.cpp SelectGPUAPI(Target t) : target(t) { target 737 src/Solve.cpp bool target = true; target 765 src/Solve.cpp if ((op->value && target) || target 766 src/Solve.cpp (!op->value && !target)) { target 768 src/Solve.cpp } else if ((!op->value && target) || target 769 src/Solve.cpp (op->value && !target)) { target 803 src/Solve.cpp if (target) { target 821 src/Solve.cpp if (!target) { target 835 src/Solve.cpp target = !target; target 837 src/Solve.cpp target = !target; target 864 src/Solve.cpp pair<string, bool> key = { op->name, target }; target 900 src/Solve.cpp auto &cache = target ? cache_t : cache_f; target 929 src/Solve.cpp if (target) { target 986 src/Solve.cpp if (target) { target 36 src/StorageFlattening.cpp const Target ⌖ target 42 src/StorageFlattening.cpp Expr idx = target.has_feature(Target::LargeBuffers) ? make_zero(Int(64)) : 0; target 67 src/StorageFlattening.cpp if (target.has_feature(Target::LargeBuffers)) { target 79 src/StorageFlattening.cpp Expr base = target.has_feature(Target::LargeBuffers) ? make_zero(Int(64)) : 0; target 81 src/StorageFlattening.cpp if (target.has_feature(Target::LargeBuffers)) { target 343 src/StorageFlattening.cpp const Target &target) { target 358 src/StorageFlattening.cpp s = FlattenDimensions(tuple_env, outputs, target).mutate(s); target 23 src/StorageFlattening.h const Target &target); target 278 src/Target.cpp string target = Internal::get_env_variable("HL_TARGET"); target 279 src/Target.cpp if (target.empty()) { target 282 src/Target.cpp return Target(target); target 289 src/Target.cpp string target = Internal::get_env_variable("HL_JIT_TARGET"); target 290 src/Target.cpp if (target.empty()) { target 293 src/Target.cpp Target t(target); target 297 src/Target.cpp << "HL_JIT_TARGET was " << target << ". " target 304 src/Target.cpp bool merge_string(Target &t, const std::string &target) { target 305 src/Target.cpp string rest = target; target 368 src/Target.cpp void bad_target_string(const std::string &target) { target 395 src/Target.cpp user_error << "Did not understand Halide target " << target << "\n" target 414 src/Target.cpp Target::Target(const std::string &target) { target 417 src/Target.cpp if (target.empty()) { target 429 src/Target.cpp if (!merge_string(*this, target)) { target 430 src/Target.cpp bad_target_string(target); target 239 src/VectorizeLoops.cpp const Target ⌖ target 248 src/VectorizeLoops.cpp internal_assert(target.features_any_of({Target::HVX_64, Target::HVX_128})) target 251 src/VectorizeLoops.cpp } else if (target.arch == Target::X86) { target 342 src/VectorizeLoops.cpp var(v), vector_predicate(vpred), in_hexagon(in_hexagon), target(t), target 361 src/VectorizeLoops.cpp const Target ⌖ target 694 src/VectorizeLoops.cpp PredicateLoadStore p(var, cond, in_hexagon, target); target 699 src/VectorizeLoops.cpp PredicateLoadStore p(var, !cond, in_hexagon, target); target 911 src/VectorizeLoops.cpp var(v), replacement(r), target(t), in_hexagon(in_hexagon) { target 918 src/VectorizeLoops.cpp const Target ⌖ target 941 src/VectorizeLoops.cpp stmt = VectorSubs(for_loop->name, replacement, in_hexagon, target).mutate(for_loop->body); target 952 src/VectorizeLoops.cpp VectorizeLoops(const Target &t) : target(t), in_hexagon(false) {} target 224 src/WrapExternStages.cpp module.target().has_feature(Target::CPlusPlusMangling))) { target 238 src/WrapExternStages.cpp if (!module.target().has_feature(Target::CPlusPlusMangling)) { target 1234 src/runtime/HalideRuntime.h const char* target; target 64 src/runtime/mini_opengl.h typedef void (*PFNGLBINDTEXTUREPROC)(GLenum target, GLuint texture); target 72 src/runtime/mini_opengl.h typedef void (*PFNGLGETTEXIMAGEPROC)(GLenum target, GLint level, target 82 src/runtime/mini_opengl.h typedef void (*PFNGLGETTEXLEVELPARAMETERIVPROC)(GLenum target, GLint level, target 84 src/runtime/mini_opengl.h typedef void (*PFNGLTEXIMAGE2DPROC)(GLenum target, GLint level, target 89 src/runtime/mini_opengl.h typedef void (*PFNGLTEXPARAMETERIPROC)(GLenum target, GLenum pname, GLint param); target 90 src/runtime/mini_opengl.h typedef void (*PFNGLTEXSUBIMAGE2DPROC)(GLenum target, GLint level, target 111 src/runtime/mini_opengl.h typedef void (*PFNGLBINDBUFFERPROC)(GLenum target, GLuint buffer); target 112 src/runtime/mini_opengl.h typedef void (*PFNGLBUFFERDATAPROC)(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage); target 177 src/runtime/mini_opengl.h typedef void (*PFNGLBINDFRAMEBUFFERPROC) (GLenum target, GLuint framebuffer); target 178 src/runtime/mini_opengl.h typedef GLenum (*PFNGLCHECKFRAMEBUFFERSTATUSPROC) (GLenum target); target 180 src/runtime/mini_opengl.h typedef void (*PFNGLFRAMEBUFFERTEXTURE2DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); target 210 src/runtime/mini_opengl.h typedef void (*PFNGLTEXBUFFEREXTPROC) (GLenum target, GLenum internalformat, GLuint buffer); target 213 src/runtime/mini_opengl.h typedef void *(*PFNGLMAPBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); target 215 src/runtime/mini_opengl.h typedef void (*PFNGLUNMAPBUFFERPROC) (GLenum target); target 216 src/runtime/mini_opengl.h typedef void (*PFNGLBINDBUFFERBASEPROC) (GLenum target, GLuint index, GLuint buffer); target 64 test/correctness/bit_counting.cpp int test_bit_counting(const Target &target) { target 78 test/correctness/bit_counting.cpp schedule(popcount_test, target); target 93 test/correctness/bit_counting.cpp schedule(ctlz_test, target); target 113 test/correctness/bit_counting.cpp schedule(cttz_test, target); target 134 test/correctness/bit_counting.cpp Target target = get_jit_target_from_environment(); target 136 test/correctness/bit_counting.cpp if (test_bit_counting<uint16_t>(target) != 0) return -1; target 137 test/correctness/bit_counting.cpp if (test_bit_counting<uint32_t>(target) != 0) return -1; target 375 test/correctness/boundary_conditions.cpp Target target = get_jit_target_from_environment(); target 381 test/correctness/boundary_conditions.cpp futures.push_back(pool.async(test_all, vector_width, target)); target 20 test/correctness/bounds.cpp Target target = get_jit_target_from_environment(); target 21 test/correctness/bounds.cpp if (target.has_gpu_feature()) { target 26 test/correctness/bounds.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 34 test/correctness/bounds.cpp Buffer<int> imf = f.realize(32, 32, target); target 35 test/correctness/bounds.cpp Buffer<int> img = g.realize(32, 32, target); target 36 test/correctness/bounds.cpp Buffer<int> imh = h.realize(32, 32, target); target 17 test/correctness/bounds_inference.cpp Target target = get_jit_target_from_environment(); target 18 test/correctness/bounds_inference.cpp if (target.has_gpu_feature()) { target 23 test/correctness/bounds_inference.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 29 test/correctness/bounds_inference.cpp Buffer<int> out = f.realize(32, 32, target); target 17 test/correctness/chunk.cpp Target target = get_jit_target_from_environment(); target 18 test/correctness/chunk.cpp if (target.has_gpu_feature() || target.has_feature(Target::OpenGLCompute)) { target 26 test/correctness/chunk.cpp Buffer<float> im = g.realize(32, 32, target); target 69 test/correctness/convolution.cpp Target target = get_jit_target_from_environment(); target 70 test/correctness/convolution.cpp if (target.has_gpu_feature()) { target 81 test/correctness/convolution.cpp } else if (target.has_feature(Target::HVX_64) || target.has_feature(Target::HVX_128)) { target 82 test/correctness/convolution.cpp int hvx_vector_width = target.has_feature(Target::HVX_128) ? 64 : 32; target 100 test/correctness/convolution.cpp Buffer<uint16_t> out1 = blur1.realize(W, H, target); target 101 test/correctness/convolution.cpp Buffer<uint16_t> out2 = blur2.realize(W, H, target); target 42 test/correctness/convolution_multiple_kernels.cpp Target target = get_jit_target_from_environment(); target 43 test/correctness/convolution_multiple_kernels.cpp if (target.has_gpu_feature()) { target 46 test/correctness/convolution_multiple_kernels.cpp } else if (target.has_feature(Target::HVX_64)) { target 48 test/correctness/convolution_multiple_kernels.cpp } else if (target.has_feature(Target::HVX_128)) { target 52 test/correctness/convolution_multiple_kernels.cpp Buffer<uint16_t> out = blur.realize(W, H, target); target 33 test/correctness/cross_compilation.cpp Target target(t); target 34 test/correctness/cross_compilation.cpp if (!target.supported()) continue; target 38 test/correctness/cross_compilation.cpp if (target.os == Target::Windows && !target.has_feature(Target::MinGW)) { target 49 test/correctness/cross_compilation.cpp f.compile_to_file(Internal::get_test_tmp_dir() + "test_object_" + t, std::vector<Argument>(), "", target); target 50 test/correctness/cross_compilation.cpp f.compile_to_static_library(Internal::get_test_tmp_dir() + "test_lib_" + t, std::vector<Argument>(), "", target); target 25 test/correctness/debug_to_file.cpp Target target = get_jit_target_from_environment(); target 26 test/correctness/debug_to_file.cpp if (target.has_gpu_feature()) { target 37 test/correctness/debug_to_file.cpp Buffer<float> im = h.realize(10, 10, target); target 27 test/correctness/debug_to_file_reorder.cpp Target target = get_jit_target_from_environment(); target 28 test/correctness/debug_to_file_reorder.cpp if (target.has_gpu_feature()) { target 39 test/correctness/debug_to_file_reorder.cpp Buffer<float> im = h.realize(size_x, size_y, target); target 29 test/correctness/dilate3x3.cpp Target target = get_jit_target_from_environment(); target 30 test/correctness/dilate3x3.cpp if (target.has_gpu_feature()) { target 33 test/correctness/dilate3x3.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 36 test/correctness/dilate3x3.cpp dilate3x3.vectorize(x, target.natural_vector_size<uint8_t>()); target 40 test/correctness/dilate3x3.cpp Buffer<uint8_t> out = dilate3x3.realize(W, H, target); target 17 test/correctness/external_code.cpp Target target = get_jit_target_from_environment(); target 20 test/correctness/external_code.cpp f.compile_to_bitcode(bitcode_file, {}, "extern", target); target 30 test/correctness/external_code.cpp ExternalCode::bitcode_wrapper(target, bitcode, "extern"); target 38 test/correctness/external_code.cpp Module module = result.compile_to_module({}, "forty_two", target); target 31 test/correctness/func_lifetime.cpp Target target = get_jit_target_from_environment(); target 32 test/correctness/func_lifetime.cpp if (target.has_gpu_feature()) { target 34 test/correctness/func_lifetime.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 41 test/correctness/func_lifetime.cpp Buffer<int> imf = f.realize(32, 32, target); target 55 test/correctness/func_lifetime.cpp if (target.has_gpu_feature()) { target 57 test/correctness/func_lifetime.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 63 test/correctness/func_lifetime.cpp Buffer<int> img = g.realize(32, 32, target); target 72 test/correctness/func_lifetime.cpp Buffer<int> imf2 = f.realize(32, 32, target); target 28 test/correctness/func_lifetime_2.cpp Target target = get_jit_target_from_environment(); target 36 test/correctness/func_lifetime_2.cpp if (target.has_gpu_feature()) { target 38 test/correctness/func_lifetime_2.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 45 test/correctness/func_lifetime_2.cpp Buffer<int> imf = f.realize(32, 32, target); target 55 test/correctness/func_lifetime_2.cpp if (target.has_gpu_feature()) { target 57 test/correctness/func_lifetime_2.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 63 test/correctness/func_lifetime_2.cpp Buffer<int> img1 = g.realize(32, 32, target); target 72 test/correctness/func_lifetime_2.cpp Buffer<int> img2 = g.realize(32, 32, target); target 6 test/correctness/fuzz_float_stores.cpp Target target = get_jit_target_from_environment(); target 7 test/correctness/fuzz_float_stores.cpp Target target_fuzzed = target.with_feature(Target::FuzzFloatStores); target 19 test/correctness/fuzz_float_stores.cpp Buffer<float> im_ref = f.realize(size, target); target 39 test/correctness/fuzz_float_stores.cpp Buffer<float> im_ref = f.realize(size, target); target 7 test/correctness/gpu_cpu_simultaneous_read.cpp Target target = get_jit_target_from_environment(); target 8 test/correctness/gpu_cpu_simultaneous_read.cpp if (!target.has_gpu_feature()) { target 8 test/correctness/gpu_data_flows.cpp Target target = get_jit_target_from_environment(); target 35 test/correctness/gpu_data_flows.cpp if (target.has_gpu_feature()) { target 37 test/correctness/gpu_data_flows.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 68 test/correctness/gpu_data_flows.cpp if (target.has_gpu_feature()) { target 71 test/correctness/gpu_data_flows.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 6 test/correctness/gpu_jit_explicit_copy_to_device.cpp Target target = get_jit_target_from_environment(); target 8 test/correctness/gpu_jit_explicit_copy_to_device.cpp if (!target.has_gpu_feature() && !target.has_feature(Target::OpenGLCompute)) { target 23 test/correctness/gpu_large_alloc.cpp Target target = get_jit_target_from_environment(); target 24 test/correctness/gpu_large_alloc.cpp if (target.has_gpu_feature() || target.has_feature(Target::OpenGLCompute)) { target 32 test/correctness/gpu_large_alloc.cpp Buffer<int> img = g.realize(W, H, target); target 7 test/correctness/gpu_mixed_dimensionality.cpp Target target = get_jit_target_from_environment(); target 8 test/correctness/gpu_mixed_dimensionality.cpp if (!target.has_gpu_feature() && !target.has_feature(Target::OpenGLCompute)) { target 18 test/correctness/gpu_multi_kernel.cpp Target target = get_jit_target_from_environment(); target 19 test/correctness/gpu_multi_kernel.cpp if (target.has_gpu_feature() || target.has_feature(Target::OpenGLCompute)) { target 28 test/correctness/gpu_multi_kernel.cpp Buffer<int32_t> result = kernel3.realize(256, target); target 7 test/correctness/gpu_non_contiguous_copy.cpp Target target = get_jit_target_from_environment(); target 44 test/correctness/gpu_non_contiguous_copy.cpp if (target.has_gpu_feature()) { target 47 test/correctness/gpu_non_contiguous_copy.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 23 test/correctness/gpu_object_lifetime_1.cpp Target target = get_jit_target_from_environment(); target 26 test/correctness/gpu_object_lifetime_1.cpp target.set_feature(Target::Debug); target 32 test/correctness/gpu_object_lifetime_1.cpp if (target.has_gpu_feature()) { target 34 test/correctness/gpu_object_lifetime_1.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 39 test/correctness/gpu_object_lifetime_1.cpp Buffer<int32_t> result = f.realize(256, target); target 23 test/correctness/gpu_object_lifetime_2.cpp Target target = get_jit_target_from_environment(); target 26 test/correctness/gpu_object_lifetime_2.cpp target.set_feature(Target::Debug); target 38 test/correctness/gpu_object_lifetime_2.cpp if (target.has_gpu_feature()) { target 40 test/correctness/gpu_object_lifetime_2.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 45 test/correctness/gpu_object_lifetime_2.cpp h.realize(256, target); target 23 test/correctness/gpu_object_lifetime_3.cpp Target target = get_jit_target_from_environment(); target 26 test/correctness/gpu_object_lifetime_3.cpp target.set_feature(Target::Debug); target 43 test/correctness/gpu_object_lifetime_3.cpp if (target.has_gpu_feature()) { target 45 test/correctness/gpu_object_lifetime_3.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 55 test/correctness/gpu_object_lifetime_3.cpp output.realize(256, target); target 16 test/correctness/hello_gpu.cpp Target target = get_jit_target_from_environment(); target 17 test/correctness/hello_gpu.cpp if (target.has_gpu_feature()) { target 23 test/correctness/hello_gpu.cpp Buffer<float> imf = f.realize(32, 32, target); target 16 test/correctness/interleave_rgb.cpp Target target = get_jit_target_from_environment(); target 23 test/correctness/interleave_rgb.cpp if (target.has_gpu_feature()) { target 26 test/correctness/interleave_rgb.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 30 test/correctness/interleave_rgb.cpp interleaved.vectorize(x, target.natural_vector_size<uint8_t>()).unroll(c); target 33 test/correctness/interleave_rgb.cpp interleaved.realize(buff, target); target 13 test/correctness/interleave_x.cpp Target target = get_jit_target_from_environment(); target 14 test/correctness/interleave_x.cpp if (target.has_gpu_feature()) { target 17 test/correctness/interleave_x.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 24 test/correctness/interleave_x.cpp Buffer<uint16_t> out = interleaved.realize(128, 128, target); target 22 test/correctness/leak_device_memory.cpp Target target = get_jit_target_from_environment(); target 25 test/correctness/leak_device_memory.cpp target.set_feature(Target::Debug); target 44 test/correctness/leak_device_memory.cpp if (target.has_gpu_feature()) { target 47 test/correctness/leak_device_memory.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 52 test/correctness/leak_device_memory.cpp f.realize(50, 50, target); target 57 test/correctness/leak_device_memory.cpp if (target.has_gpu_feature()) { target 77 test/correctness/load_library.cpp Target target = get_jit_target_from_environment().with_feature(Target::OpenCL); target 81 test/correctness/load_library.cpp Buffer<int32_t> out = f.realize(64, 64, target); target 31 test/correctness/logical.cpp Target target = get_jit_target_from_environment(); target 32 test/correctness/logical.cpp if (target.has_gpu_feature()) { target 34 test/correctness/logical.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 40 test/correctness/logical.cpp Buffer<uint8_t> output = f.realize(input.width(), input.height(), target); target 64 test/correctness/logical.cpp Target target = get_jit_target_from_environment(); target 65 test/correctness/logical.cpp if (target.has_gpu_feature()) { target 67 test/correctness/logical.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 73 test/correctness/logical.cpp Buffer<uint8_t> output = f.realize(input.width(), input.height(), target); target 94 test/correctness/logical.cpp Target target = get_jit_target_from_environment(); target 96 test/correctness/logical.cpp if (target.has_gpu_feature()) { target 98 test/correctness/logical.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 104 test/correctness/logical.cpp Buffer<uint8_t> output = f.realize(input.width(), input.height(), target); target 124 test/correctness/logical.cpp Target target = get_jit_target_from_environment(); target 125 test/correctness/logical.cpp if (target.has_gpu_feature()) { target 127 test/correctness/logical.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 133 test/correctness/logical.cpp Buffer<uint8_t> output = f.realize(input.width(), input.height(), target); target 176 test/correctness/logical.cpp Target target = get_jit_target_from_environment(); target 177 test/correctness/logical.cpp if (target.has_gpu_feature()) { target 179 test/correctness/logical.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 186 test/correctness/logical.cpp Realization r = out.realize(input.width(), input.height(), target); target 58 test/correctness/math.cpp Target target = get_jit_target_from_environment(); \ target 59 test/correctness/math.cpp if (!target.supports_type(type_of<type>())) { \ target 65 test/correctness/math.cpp if (target.has_gpu_feature()) { \ target 67 test/correctness/math.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { \ target 70 test/correctness/math.cpp Buffer<type_ret> result = test_##name.realize(in.extent(0), target); \ target 83 test/correctness/math.cpp Target target = get_jit_target_from_environment(); \ target 84 test/correctness/math.cpp if (!target.supports_type(type_of<type>())) { \ target 90 test/correctness/math.cpp if (target.has_gpu_feature()) { \ target 92 test/correctness/math.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { \ target 95 test/correctness/math.cpp Buffer<type_ret> result = test_##name.realize(in.height(), target); \ target 46 test/correctness/median3x3.cpp Target target = get_jit_target_from_environment(); target 47 test/correctness/median3x3.cpp if (target.has_gpu_feature()) { target 50 test/correctness/median3x3.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 53 test/correctness/median3x3.cpp median3x3.vectorize(x, target.natural_vector_size<uint8_t>()); target 57 test/correctness/median3x3.cpp Buffer<uint8_t> out = median3x3.realize(W, H, target); target 276 test/correctness/mul_div_mod.cpp bool mul(int vector_width, ScheduleVariant scheduling, const Target &target) { target 310 test/correctness/mul_div_mod.cpp Buffer<RT> r = f.realize(WIDTH, HEIGHT, target); target 351 test/correctness/mul_div_mod.cpp bool div_mod(int vector_width, ScheduleVariant scheduling, const Target &target) { target 395 test/correctness/mul_div_mod.cpp Realization R = f.realize(WIDTH, HEIGHT, target); target 504 test/correctness/mul_div_mod.cpp bool test_mul(int vector_width, ScheduleVariant scheduling, Target target) { target 508 test/correctness/mul_div_mod.cpp success &= mul<uint8_t, uint8_t, uint8_t, uint64_t>(vector_width, scheduling, target); target 509 test/correctness/mul_div_mod.cpp success &= mul<uint16_t, uint16_t, uint16_t, uint64_t>(vector_width, scheduling, target); target 510 test/correctness/mul_div_mod.cpp success &= mul<uint32_t, uint32_t, uint32_t, uint64_t>(vector_width, scheduling, target); target 511 test/correctness/mul_div_mod.cpp success &= mul<int8_t, int8_t, int8_t, int64_t>(vector_width, scheduling, target); target 512 test/correctness/mul_div_mod.cpp success &= mul<int16_t, int16_t, int16_t, int64_t>(vector_width, scheduling, target); target 513 test/correctness/mul_div_mod.cpp success &= mul<int32_t, int32_t, int32_t, int64_t>(vector_width, scheduling, target); target 516 test/correctness/mul_div_mod.cpp success &= mul<uint8_t, uint8_t, uint16_t, uint64_t>(vector_width, scheduling, target); target 517 test/correctness/mul_div_mod.cpp success &= mul<uint16_t, uint16_t, uint32_t, uint64_t>(vector_width, scheduling, target); target 518 test/correctness/mul_div_mod.cpp success &= mul<int8_t, int8_t, int16_t, int64_t>(vector_width, scheduling, target); target 519 test/correctness/mul_div_mod.cpp success &= mul<int16_t, int16_t, int32_t, int64_t>(vector_width, scheduling, target); target 524 test/correctness/mul_div_mod.cpp success &= mul<uint16_t, uint32_t, uint32_t, uint64_t>(vector_width, scheduling, target); target 525 test/correctness/mul_div_mod.cpp success &= mul<int16_t, int32_t, int32_t, uint64_t>(vector_width, scheduling, target); target 526 test/correctness/mul_div_mod.cpp success &= mul<uint16_t, int32_t, int32_t, uint64_t>(vector_width, scheduling, target); target 531 test/correctness/mul_div_mod.cpp bool test_div_mod(int vector_width, ScheduleVariant scheduling, Target target) { target 534 test/correctness/mul_div_mod.cpp success &= div_mod<uint8_t, uint64_t>(vector_width, scheduling, target); target 535 test/correctness/mul_div_mod.cpp success &= div_mod<uint16_t, uint64_t>(vector_width, scheduling, target); target 536 test/correctness/mul_div_mod.cpp success &= div_mod<uint32_t, uint64_t>(vector_width, scheduling, target); target 537 test/correctness/mul_div_mod.cpp success &= div_mod<int8_t, int64_t>(vector_width, scheduling, target); target 538 test/correctness/mul_div_mod.cpp success &= div_mod<int16_t, int64_t>(vector_width, scheduling, target); target 539 test/correctness/mul_div_mod.cpp success &= div_mod<int32_t, int64_t>(vector_width, scheduling, target); target 545 test/correctness/mul_div_mod.cpp Target target = get_jit_target_from_environment(); target 548 test/correctness/mul_div_mod.cpp if (target.has_gpu_feature()) { target 550 test/correctness/mul_div_mod.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 556 test/correctness/mul_div_mod.cpp if (target.has_feature(Target::Metal)) { target 560 test/correctness/mul_div_mod.cpp } else if (target.has_feature(Target::HVX_64)) { target 562 test/correctness/mul_div_mod.cpp } else if (target.has_feature(Target::HVX_128)) { target 582 test/correctness/mul_div_mod.cpp auto f = pool.async(test_mul, vector_width, scheduling, target); target 588 test/correctness/mul_div_mod.cpp auto f = pool.async(test_div_mod, vector_width, scheduling, target); target 13 test/correctness/newtons_method.cpp Target target = get_jit_target_from_environment(); target 14 test/correctness/newtons_method.cpp if (target.has_feature(Target::OpenCL) && target 15 test/correctness/newtons_method.cpp !target.has_feature(Target::CLDoubles) && target 26 test/correctness/param.cpp Target target = get_jit_target_from_environment(); target 27 test/correctness/param.cpp if (target.has_gpu_feature()) { target 30 test/correctness/param.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 35 test/correctness/param.cpp Buffer<int> out_17 = f.realize(1024, target); target 41 test/correctness/param.cpp Buffer<int> out_123 = f.realize(1024, target); target 100 test/correctness/predicated_store_load.cpp Target target = get_jit_target_from_environment(); target 101 test/correctness/predicated_store_load.cpp if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 103 test/correctness/predicated_store_load.cpp } else if (target.arch == Target::X86) { target 129 test/correctness/predicated_store_load.cpp Target target = get_jit_target_from_environment(); target 130 test/correctness/predicated_store_load.cpp if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 132 test/correctness/predicated_store_load.cpp } else if (target.arch == Target::X86) { target 167 test/correctness/predicated_store_load.cpp Target target = get_jit_target_from_environment(); target 168 test/correctness/predicated_store_load.cpp if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 170 test/correctness/predicated_store_load.cpp } else if (target.arch == Target::X86) { target 200 test/correctness/predicated_store_load.cpp Target target = get_jit_target_from_environment(); target 201 test/correctness/predicated_store_load.cpp if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 203 test/correctness/predicated_store_load.cpp } else if (target.arch == Target::X86) { target 235 test/correctness/predicated_store_load.cpp Target target = get_jit_target_from_environment(); target 236 test/correctness/predicated_store_load.cpp if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 238 test/correctness/predicated_store_load.cpp } else if (target.arch == Target::X86) { target 270 test/correctness/predicated_store_load.cpp Target target = get_jit_target_from_environment(); target 271 test/correctness/predicated_store_load.cpp if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 273 test/correctness/predicated_store_load.cpp } else if (target.arch == Target::X86) { target 302 test/correctness/predicated_store_load.cpp Target target = get_jit_target_from_environment(); target 303 test/correctness/predicated_store_load.cpp if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 306 test/correctness/predicated_store_load.cpp } else if (target.arch == Target::X86) { target 337 test/correctness/predicated_store_load.cpp Target target = get_jit_target_from_environment(); target 338 test/correctness/predicated_store_load.cpp if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 340 test/correctness/predicated_store_load.cpp } else if (target.arch == Target::X86) { target 62 test/correctness/simd_op_check.cpp Target target; target 79 test/correctness/simd_op_check.cpp target = get_target_from_environment() target 83 test/correctness/simd_op_check.cpp use_avx512_knl = target.has_feature(Target::AVX512_KNL); target 84 test/correctness/simd_op_check.cpp use_avx512_cannonlake = target.has_feature(Target::AVX512_Cannonlake); target 85 test/correctness/simd_op_check.cpp use_avx512_skylake = use_avx512_cannonlake || target.has_feature(Target::AVX512_Skylake); target 86 test/correctness/simd_op_check.cpp use_avx512 = use_avx512_knl || use_avx512_skylake || use_avx512_cannonlake || target.has_feature(Target::AVX512); target 87 test/correctness/simd_op_check.cpp use_avx2 = use_avx512 || target.has_feature(Target::AVX2); target 88 test/correctness/simd_op_check.cpp use_avx = use_avx2 || target.has_feature(Target::AVX); target 89 test/correctness/simd_op_check.cpp use_sse41 = use_avx || target.has_feature(Target::SSE41); target 98 test/correctness/simd_op_check.cpp use_vsx = target.has_feature(Target::VSX); target 99 test/correctness/simd_op_check.cpp use_power_arch_2_07 = target.has_feature(Target::POWER_ARCH_2_07); target 132 test/correctness/simd_op_check.cpp (target.arch == host_target.arch && target 133 test/correctness/simd_op_check.cpp target.bits == host_target.bits && target 134 test/correctness/simd_op_check.cpp target.os == host_target.os); target 142 test/correctness/simd_op_check.cpp if (target.has_feature(f) != host_target.has_feature(f)) { target 212 test/correctness/simd_op_check.cpp f.compile_to_assembly(asm_filename, arg_types, target); target 239 test/correctness/simd_op_check.cpp error.compile_to_file(output_directory + fn_name, arg_types, fn_name, target); target 243 test/correctness/simd_op_check.cpp Realization r = error.realize(target.without_feature(Target::NoRuntime)); target 681 test/correctness/simd_op_check.cpp bool arm32 = (target.bits == 32); target 1445 test/correctness/simd_op_check.cpp if (target.has_feature(Target::HVX_64)) { target 1447 test/correctness/simd_op_check.cpp } else if (target.has_feature(Target::HVX_128)) { target 1451 test/correctness/simd_op_check.cpp bool is_v62 = target.has_feature(Target::HVX_v62); target 2042 test/correctness/simd_op_check.cpp if (target.arch == Target::X86) { target 2044 test/correctness/simd_op_check.cpp } else if (target.arch == Target::ARM) { target 2046 test/correctness/simd_op_check.cpp } else if (target.arch == Target::Hexagon) { target 2048 test/correctness/simd_op_check.cpp } else if (target.arch == Target::POWERPC) { target 2095 test/correctness/simd_op_check.cpp compile_standalone_runtime(test.output_directory + "simd_op_check_runtime.o", test.target); target 7 test/correctness/tuple_reduction.cpp Target target = get_jit_target_from_environment(); target 20 test/correctness/tuple_reduction.cpp if (target.has_gpu_feature()) { target 23 test/correctness/tuple_reduction.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 58 test/correctness/tuple_reduction.cpp if (target.has_gpu_feature()) { target 60 test/correctness/tuple_reduction.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 65 test/correctness/tuple_reduction.cpp if (target.has_gpu_feature()) { target 67 test/correctness/tuple_reduction.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 108 test/correctness/tuple_reduction.cpp if (target.has_gpu_feature()) { target 110 test/correctness/tuple_reduction.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 154 test/correctness/tuple_reduction.cpp if (target.has_gpu_feature()) { target 156 test/correctness/tuple_reduction.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 24 test/correctness/vector_cast.cpp bool is_type_supported(int vec_width, const Target &target) { target 25 test/correctness/vector_cast.cpp return target.supports_type(type_of<T>().with_lanes(vec_width)); target 29 test/correctness/vector_cast.cpp bool is_type_supported<float>(int vec_width, const Target &target) { target 30 test/correctness/vector_cast.cpp if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 38 test/correctness/vector_cast.cpp bool is_type_supported<double>(int vec_width, const Target &target) { target 39 test/correctness/vector_cast.cpp if (target.has_feature(Target::OpenCL) && target 40 test/correctness/vector_cast.cpp !target.has_feature(Target::CLDoubles)) { target 42 test/correctness/vector_cast.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 50 test/correctness/vector_cast.cpp bool test(int vec_width, const Target &target) { target 51 test/correctness/vector_cast.cpp if (!is_type_supported<A>(vec_width, target) || !is_type_supported<B>(vec_width, target)) { target 71 test/correctness/vector_cast.cpp if (target.has_gpu_feature()) { target 75 test/correctness/vector_cast.cpp if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 116 test/correctness/vector_cast.cpp bool test_all(int vec_width, const Target &target) { target 118 test/correctness/vector_cast.cpp success = success && test<A, float>(vec_width, target); target 119 test/correctness/vector_cast.cpp success = success && test<A, double>(vec_width, target); target 120 test/correctness/vector_cast.cpp success = success && test<A, uint8_t>(vec_width, target); target 121 test/correctness/vector_cast.cpp success = success && test<A, uint16_t>(vec_width, target); target 122 test/correctness/vector_cast.cpp success = success && test<A, uint32_t>(vec_width, target); target 123 test/correctness/vector_cast.cpp success = success && test<A, int8_t>(vec_width, target); target 124 test/correctness/vector_cast.cpp success = success && test<A, int16_t>(vec_width, target); target 125 test/correctness/vector_cast.cpp success = success && test<A, int32_t>(vec_width, target); target 141 test/correctness/vector_cast.cpp Target target = get_jit_target_from_environment(); target 149 test/correctness/vector_cast.cpp success = success && test_all<float>(vec_width, target); target 150 test/correctness/vector_cast.cpp success = success && test_all<double>(vec_width, target); target 151 test/correctness/vector_cast.cpp success = success && test_all<uint8_t>(vec_width, target); target 152 test/correctness/vector_cast.cpp success = success && test_all<uint16_t>(vec_width, target); target 153 test/correctness/vector_cast.cpp success = success && test_all<uint32_t>(vec_width, target); target 154 test/correctness/vector_cast.cpp success = success && test_all<int8_t>(vec_width, target); target 155 test/correctness/vector_cast.cpp success = success && test_all<int16_t>(vec_width, target); target 156 test/correctness/vector_cast.cpp success = success && test_all<int32_t>(vec_width, target); target 40 test/correctness/widening_reduction.cpp Target target = get_jit_target_from_environment(); target 41 test/correctness/widening_reduction.cpp if (target.has_gpu_feature()) { target 43 test/correctness/widening_reduction.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 46 test/correctness/widening_reduction.cpp f.vectorize(x, target.natural_vector_size<uint8_t>()); target 50 test/correctness/widening_reduction.cpp Buffer<uint8_t> out = f.realize(W, H, target); target 82 test/correctness/widening_reduction.cpp Target target = get_jit_target_from_environment(); target 83 test/correctness/widening_reduction.cpp if (target.has_gpu_feature()) { target 85 test/correctness/widening_reduction.cpp } else if (target.features_any_of({Target::HVX_64, Target::HVX_128})) { target 88 test/correctness/widening_reduction.cpp g.vectorize(x, target.natural_vector_size<uint8_t>()); target 92 test/correctness/widening_reduction.cpp Buffer<uint8_t> out = g.realize(W, H, target); target 16 test/generator/acquire_release_generator.cpp Target target = get_target(); target 17 test/generator/acquire_release_generator.cpp if (target.has_gpu_feature()) { target 16 test/generator/cleanup_on_error_generator.cpp Target target = get_target(); target 17 test/generator/cleanup_on_error_generator.cpp if (target.has_gpu_feature()) { target 12 test/generator/error_codes_generator.cpp target.set(get_target().without_feature(Target::LargeBuffers)); target 20 test/generator/external_code_generator.cpp Target target = get_target(); target 24 test/generator/external_code_generator.cpp if (target.bits == 64) { target 33 test/generator/external_code_generator.cpp Halide::ExternalCode::bitcode_wrapper(target, code_vector, "org.halide-lang.extern_code_extern")}); target 13 test/generator/gpu_object_lifetime_generator.cpp Target target = get_target(); target 14 test/generator/gpu_object_lifetime_generator.cpp if (target.has_gpu_feature()) { target 19 test/generator/gpu_object_lifetime_generator.cpp target.set_feature(Target::Debug); target 16 test/generator/gpu_only_generator.cpp Target target = get_target(); target 17 test/generator/gpu_only_generator.cpp if (target.has_gpu_feature()) { target 47 test/generator/memory_profiler_mandelbrot_generator.cpp target.set(get_target().with_feature(Target::Profile)); target 261 test/generator/metadata_tester_aottest.cpp if (!strstr(md.target, "x86") && target 262 test/generator/metadata_tester_aottest.cpp !strstr(md.target, "powerpc") && target 263 test/generator/metadata_tester_aottest.cpp !strstr(md.target, "arm")) { target 264 test/generator/metadata_tester_aottest.cpp fprintf(stderr, "Expected x86 or arm, Actual %s\n", md.target); target 24 test/generator/user_context_generator.cpp target.set(get_target().without_feature(Target::Profile)); target 12 test/opengl/conv_select.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 37 test/opengl/conv_select.cpp Buffer<float> result = g.realize(width, height, res_channels, target); target 10 test/opengl/copy_pixels.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 24 test/opengl/copy_pixels.cpp g.realize(out, target); target 11 test/opengl/copy_to_device.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 29 test/opengl/copy_to_device.cpp g.realize(out, target); target 10 test/opengl/copy_to_host.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 27 test/opengl/copy_to_host.cpp cpu.realize(out, target); target 10 test/opengl/float_texture.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 28 test/opengl/float_texture.cpp g.realize(out, target); target 10 test/opengl/inline_reduction.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 18 test/opengl/inline_reduction.cpp Buffer<float> result = f.realize(100, 100, 3, target); target 15 test/opengl/lut.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 51 test/opengl/lut.cpp f0.realize(out0, target); target 11 test/opengl/multiple_stages.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 22 test/opengl/multiple_stages.cpp Buffer<uint8_t> result = f.realize(10, 10, 3, target); target 36 test/opengl/multiple_stages.cpp Buffer<float> result2 = g2.realize(10, 10, 3, target); target 15 test/opengl/produce.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 44 test/opengl/produce.cpp f0.realize(out0, target); target 30 test/opengl/rewrap_texture.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 46 test/opengl/rewrap_texture.cpp g.realize(out1, target); // run once to initialize OpenGL target 59 test/opengl/rewrap_texture.cpp g.realize(out2, target); target 64 test/opengl/rewrap_texture.cpp g.realize(out3, target); target 303 test/opengl/save_state.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 315 test/opengl/save_state.cpp g.realize(out, target); // let Halide initialize OpenGL target 318 test/opengl/save_state.cpp g.realize(out, target); target 326 test/opengl/save_state.cpp g.realize(out, target); target 13 test/opengl/select.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 29 test/opengl/select.cpp cpu.realize(out, target); target 50 test/opengl/select.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 70 test/opengl/select.cpp cpu.realize(out, target); target 87 test/opengl/select.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 116 test/opengl/select.cpp cpu.realize(out, target); target 133 test/opengl/select.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 147 test/opengl/select.cpp Buffer<uint8_t> out = f.realize(width, height, channels, target); target 169 test/opengl/select.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 183 test/opengl/select.cpp Buffer<uint8_t> out = f.realize(width, height, channels, target); target 10 test/opengl/set_pixels.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 19 test/opengl/set_pixels.cpp f.realize(out, target); target 14 test/opengl/shifted_domains.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 27 test/opengl/shifted_domains.cpp gradient.realize(result, target); target 38 test/opengl/shifted_domains.cpp gradient.realize(shifted, target); target 49 test/opengl/shifted_domains.cpp gradient.realize(shifted, target); target 10 test/opengl/sum_reduction.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 30 test/opengl/sum_reduction.cpp Buffer<float> result = g.realize(width, height, channels, target); target 10 test/opengl/sumcolor_reduction.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 30 test/opengl/sumcolor_reduction.cpp Buffer<float> result = g.realize(10, 10, 3, target); target 10 test/opengl/tuples.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 31 test/opengl/tuples.cpp h.realize(out, target); target 54 test/opengl/varying.cpp bool perform_test(const char *label, const Target target, Func f, int expected_nvarying, float tol, std::function<float(int x, int y, int c)> expected_val) { target 61 test/opengl/varying.cpp f.realize(out, target); target 84 test/opengl/varying.cpp bool test0(const Target target, Var &x, Var &y, Var &c) { target 96 test/opengl/varying.cpp return perform_test("Test0", target, f0, 2, 0.0f, [&](int x, int y, int c) { target 125 test/opengl/varying.cpp bool test1(const Target target, Var &x, Var &y, Var &c) { target 135 test/opengl/varying.cpp return perform_test("Test1", target, f1, 4, 0.000001f, [&](int x, int y, int c) { target 146 test/opengl/varying.cpp bool test2(const Target target, Var &x, Var &y, Var &c) { target 155 test/opengl/varying.cpp return perform_test("Test2", target, f2, 4, 0.000001f, [&](int x, int y, int c) { target 165 test/opengl/varying.cpp bool test3(const Target target, Var &x, Var &y, Var &c) { target 188 test/opengl/varying.cpp return perform_test("Test3", target, f3, 2, 0.000001f, [&](int x, int y, int c) { target 198 test/opengl/varying.cpp const Target target = get_jit_target_from_environment().with_feature(Target::OpenGL); target 205 test/opengl/varying.cpp pass &= test0(target, x, y, c); target 206 test/opengl/varying.cpp pass &= test1(target, x, y, c); target 207 test/opengl/varying.cpp pass &= test2(target, x, y, c); target 208 test/opengl/varying.cpp pass &= test3(target, x, y, c); target 12 test/performance/boundary_conditions.cpp Target target; target 24 test/performance/boundary_conditions.cpp if (target.has_gpu_feature()) { target 50 test/performance/boundary_conditions.cpp if (target.has_gpu_feature()) { target 70 test/performance/boundary_conditions.cpp target = get_jit_target_from_environment(); target 114 test/performance/wrap.cpp Target target = get_jit_target_from_environment(); target 115 test/performance/wrap.cpp if (!target.has_gpu_feature()) { target 21 tools/binary2cpp.cpp const char *target = argv[1]; target 24 tools/binary2cpp.cpp printf("#ifndef _H_%s_binary2cpp\n", target); target 25 tools/binary2cpp.cpp printf("#define _H_%s_binary2cpp\n", target); target 27 tools/binary2cpp.cpp printf("unsigned char %s[];\n", target); target 28 tools/binary2cpp.cpp printf("int %s_length;\n", target); target 30 tools/binary2cpp.cpp printf("#endif // _H_%s_binary2cpp\n", target); target 43 tools/binary2cpp.cpp printf("unsigned char %s[] = {\n", target); target 58 tools/binary2cpp.cpp printf("int %s_length = %d;\n", target, count); target 55 tutorial/lesson_11_cross_compilation.cpp Target target; target 56 tutorial/lesson_11_cross_compilation.cpp target.os = Target::Android; // The operating system target 57 tutorial/lesson_11_cross_compilation.cpp target.arch = Target::ARM; // The CPU architecture target 58 tutorial/lesson_11_cross_compilation.cpp target.bits = 32; // The bit-width of the architecture target 60 tutorial/lesson_11_cross_compilation.cpp target.set_features(arm_features); target 62 tutorial/lesson_11_cross_compilation.cpp brighter.compile_to_file("lesson_11_arm_32_android", args, "brighter", target); target 65 tutorial/lesson_11_cross_compilation.cpp target.os = Target::Windows; target 66 tutorial/lesson_11_cross_compilation.cpp target.arch = Target::X86; target 67 tutorial/lesson_11_cross_compilation.cpp target.bits = 64; target 71 tutorial/lesson_11_cross_compilation.cpp target.set_features(x86_features); target 72 tutorial/lesson_11_cross_compilation.cpp brighter.compile_to_file("lesson_11_x86_64_windows", args, "brighter", target); target 80 tutorial/lesson_11_cross_compilation.cpp target.os = Target::IOS; target 81 tutorial/lesson_11_cross_compilation.cpp target.arch = Target::ARM; target 82 tutorial/lesson_11_cross_compilation.cpp target.bits = 32; target 85 tutorial/lesson_11_cross_compilation.cpp target.set_features(armv7s_features); target 86 tutorial/lesson_11_cross_compilation.cpp brighter.compile_to_file("lesson_11_arm_32_ios", args, "brighter", target); target 174 tutorial/lesson_12_using_the_gpu.cpp Target target = get_host_target(); target 180 tutorial/lesson_12_using_the_gpu.cpp if (target.os == Target::OSX) { target 181 tutorial/lesson_12_using_the_gpu.cpp target.set_feature(Target::Metal); target 183 tutorial/lesson_12_using_the_gpu.cpp target.set_feature(Target::OpenCL); target 197 tutorial/lesson_12_using_the_gpu.cpp curved.compile_jit(target);