Halide 19.0.0
Halide compiler and libraries
|
#include <simd_op_check.h>
Public Types | |
using | Sharder = Halide::Internal::Test::Sharder |
Public Member Functions | |
SimdOpCheckTest (const Target t, int w, int h) | |
virtual | ~SimdOpCheckTest ()=default |
void | set_seed (int seed) |
virtual bool | can_run_code () const |
virtual void | compile_and_check (Func error, const std::string &op, const std::string &name, int vector_width, const std::vector< Argument > &arg_types, std::ostringstream &error_msg) |
bool | wildcard_match (const char *p, const char *str) const |
bool | wildcard_match (const std::string &p, const std::string &str) const |
bool | wildcard_search (const std::string &p, const std::string &str) const |
Target | get_run_target () const |
TestResult | check_one (const std::string &op, const std::string &name, int vector_width, Expr e) |
void | check (std::string op, int vector_width, Expr e) |
virtual void | add_tests ()=0 |
virtual int | image_param_alignment () |
virtual bool | use_multiple_threads () const |
virtual bool | test_all () |
Static Public Member Functions | |
template<typename SIMDOpCheckT > | |
static int | main (int argc, char **argv, const std::vector< Target > &targets_to_test) |
Public Attributes | |
const Expr | max_u32 = UInt(32).max() |
std::string | filter {"*"} |
std::string | output_directory {Internal::get_test_tmp_dir()} |
std::vector< Task > | tasks |
Target | target |
int | W |
int | H |
int | rng_seed |
Static Public Attributes | |
static constexpr int | max_i8 = 127 |
static constexpr int | max_i16 = 32767 |
static constexpr int | max_i32 = 0x7fffffff |
static constexpr int | max_u8 = 255 |
static constexpr int | max_u16 = 65535 |
Definition at line 72 of file simd_op_check.h.
Definition at line 92 of file simd_op_check.h.
|
inline |
Definition at line 94 of file simd_op_check.h.
References Halide::Target::NoAsserts, Halide::Target::NoBoundsQuery, Halide::Target::NoRuntime, target, and Halide::Target::with_feature().
|
virtualdefault |
|
inline |
Definition at line 103 of file simd_op_check.h.
References rng_seed.
|
inlinevirtual |
Definition at line 107 of file simd_op_check.h.
References Halide::Target::arch, Halide::Target::ARMDotProd, Halide::Target::ARMFp16, Halide::Target::ARMv7s, Halide::Target::ARMv81a, Halide::Target::ARMv82a, Halide::Target::ARMv83a, Halide::Target::ARMv84a, Halide::Target::ARMv85a, Halide::Target::ARMv86a, Halide::Target::ARMv87a, Halide::Target::ARMv88a, Halide::Target::ARMv89a, Halide::Target::ARMv8a, Halide::Target::AVX, Halide::Target::AVX2, Halide::Target::AVX512, Halide::Target::AVX512_Cannonlake, Halide::Target::AVX512_KNL, Halide::Target::AVX512_SapphireRapids, Halide::Target::AVX512_Skylake, Halide::Target::bits, Halide::Internal::WasmModule::can_jit_target(), Halide::Target::F16C, Halide::Target::FMA, Halide::Target::FMA4, Halide::get_host_target(), Halide::Target::has_feature(), Halide::Target::NoNEON, Halide::Target::os, Halide::Target::POWER_ARCH_2_07, Halide::Target::RVV, Halide::Target::SSE41, Halide::Target::SVE, Halide::Target::SVE2, target, Halide::Target::VSX, and Halide::Target::WebAssembly.
Referenced by check_one().
|
inlinevirtual |
Definition at line 158 of file simd_op_check.h.
References Halide::assembly, Halide::c_header, Halide::Func::compile_to(), Halide::Internal::get_output_info(), get_run_target(), Halide::object, output_directory, target, Halide::Target::to_string(), and wildcard_search().
Referenced by check_one().
|
inline |
Definition at line 199 of file simd_op_check.h.
References wildcard_match().
Referenced by check(), wildcard_match(), wildcard_match(), and wildcard_search().
|
inline |
Definition at line 229 of file simd_op_check.h.
References wildcard_match().
|
inline |
Definition at line 234 of file simd_op_check.h.
References wildcard_match().
Referenced by compile_and_check().
|
inline |
Definition at line 238 of file simd_op_check.h.
References Halide::Target::NoAsserts, Halide::Target::NoBoundsQuery, Halide::Target::NoRuntime, target, and Halide::Target::without_feature().
Referenced by check_one(), compile_and_check(), and test_all().
|
inline |
Definition at line 245 of file simd_op_check.h.
References Halide::absd(), Halide::Internal::IRHandle::accept(), Halide::Internal::Call::args, Halide::BFloat(), Halide::Func::bound(), Halide::Internal::Call::call_type, can_run_code(), Halide::cast(), Halide::Func::clone_in(), compile_and_check(), Halide::Func::compile_to_assembly(), Halide::Func::compile_to_callable(), Halide::Func::compute_at(), Halide::Func::compute_root(), Halide::Float(), Halide::Internal::Call::func, get_run_target(), H, Halide::Internal::Call::Halide, Halide::Internal::Function::has_update_definition(), image_param_alignment(), Halide::Int(), Halide::Runtime::Buffer< T, Dims, InClassDimStorage >::make_scalar(), Halide::maximum(), Halide::Internal::Function::mutate(), Halide::Internal::Call::name, output_directory, rng_seed, Halide::Internal::StageSchedule::rvars(), Halide::Internal::Definition::schedule(), target, Halide::Internal::BaseExprNode::type, Halide::UInt(), Halide::Func::update(), Halide::Internal::Function::update(), Halide::Func::vectorize(), Halide::Internal::IRMutator::visit(), Halide::Internal::IRVisitor::visit(), W, Halide::Internal::FunctionPtr::weak, Halide::RDom::x, and Halide::RDom::y.
|
inline |
Definition at line 441 of file simd_op_check.h.
References filter, tasks, and wildcard_match().
|
pure virtual |
Referenced by test_all().
|
inlinevirtual |
Definition at line 458 of file simd_op_check.h.
Referenced by check_one().
|
inlinevirtual |
Definition at line 462 of file simd_op_check.h.
Referenced by test_all().
|
inlinevirtual |
Definition at line 466 of file simd_op_check.h.
References add_tests(), get_run_target(), Halide::Internal::Test::Sharder::should_run(), tasks, Halide::Target::to_string(), and use_multiple_threads().
|
inlinestatic |
Definition at line 508 of file simd_op_check.h.
References atoi(), Halide::compile_standalone_runtime(), Halide::get_host_target(), and getenv().
|
staticconstexpr |
Definition at line 74 of file simd_op_check.h.
|
staticconstexpr |
Definition at line 75 of file simd_op_check.h.
|
staticconstexpr |
Definition at line 76 of file simd_op_check.h.
|
staticconstexpr |
Definition at line 77 of file simd_op_check.h.
|
staticconstexpr |
Definition at line 78 of file simd_op_check.h.
Definition at line 79 of file simd_op_check.h.
std::string Halide::SimdOpCheckTest::filter {"*"} |
Definition at line 81 of file simd_op_check.h.
Referenced by check().
std::string Halide::SimdOpCheckTest::output_directory {Internal::get_test_tmp_dir()} |
Definition at line 82 of file simd_op_check.h.
Referenced by check_one(), and compile_and_check().
std::vector<Task> Halide::SimdOpCheckTest::tasks |
Definition at line 83 of file simd_op_check.h.
Referenced by check(), and test_all().
Target Halide::SimdOpCheckTest::target |
Definition at line 85 of file simd_op_check.h.
Referenced by can_run_code(), check_one(), compile_and_check(), get_run_target(), and SimdOpCheckTest().
int Halide::SimdOpCheckTest::W |
Definition at line 87 of file simd_op_check.h.
Referenced by check_one().
int Halide::SimdOpCheckTest::H |
Definition at line 88 of file simd_op_check.h.
Referenced by check_one().
int Halide::SimdOpCheckTest::rng_seed |
Definition at line 90 of file simd_op_check.h.
Referenced by check_one(), and set_seed().