/usr/local/lib64/python3.6/site-packages/torch/include/torch/csrc/jit/tensorexpr
NameSizeModeActions
operators/-0755rm
analysis.h58880644editdlrm
block_codegen.h42110644editdlrm
bounds_inference.h22300644editdlrm
bounds_overlap.h33290644editdlrm
codegen.h64020644editdlrm
cpp_codegen.h22780644editdlrm
cpp_intrinsics.h7190644editdlrm
cuda_codegen.h77820644editdlrm
cuda_random.h26420644editdlrm
dim_arg.h8840644editdlrm
eval.h96390644editdlrm
exceptions.h32530644editdlrm
expr.h115880644editdlrm
external_functions.h12740644editdlrm
external_functions_registry.h23430644editdlrm
fwd_decls.h28060644editdlrm
graph_opt.h25530644editdlrm
half_support.h50380644editdlrm
hash_provider.h79300644editdlrm
intrinsic_symbols.h4200644editdlrm
ir.h226220644editdlrm
ir_cloner.h20690644editdlrm
ir_mutator.h20100644editdlrm
ir_printer.h36930644editdlrm
ir_simplifier.h150900644editdlrm
ir_verifier.h12400644editdlrm
ir_visitor.h18250644editdlrm
kernel.h92100644editdlrm
llvm_codegen.h31800644editdlrm
llvm_jit.h19650644editdlrm
loopnest.h215990644editdlrm
mem_dependency_checker.h130030644editdlrm
reduction.h67420644editdlrm
registerizer.h124980644editdlrm
stmt.h211380644editdlrm
tensor.h76400644editdlrm
tensorexpr_init.h2680644editdlrm
types.h38800644editdlrm
unique_name_manager.h9400644editdlrm
var_substitutor.h17530644editdlrm
Edit: /usr/local/lib64/python3.6/site-packages/torch/include/torch/csrc/jit/tensorexpr/llvm_jit.h (1965B)
#pragma once #ifdef TORCH_ENABLE_LLVM #include #include #include #include #include #include #include #include #include namespace torch { namespace jit { namespace tensorexpr { extern "C" { void DispatchParallel( int8_t* func, int64_t start, int64_t stop, int8_t* packed_data) noexcept; } inline std::string formatError(llvm::Error&& err, const char* msg) { static constexpr char* defaultErrorMsg = "Unexpected failure in LLVM JIT"; std::string errorMsg(msg ? msg : defaultErrorMsg); llvm::raw_string_ostream ss(errorMsg); ss << ": " << err; return ss.str(); } template T assertSuccess(llvm::Expected valOrErr, const char* msg = nullptr) { TORCH_INTERNAL_ASSERT(valOrErr, formatError(valOrErr.takeError(), msg)); return std::move(*valOrErr); } inline void assertSuccess(llvm::Error err, const char* msg = nullptr) { TORCH_INTERNAL_ASSERT(!err, formatError(std::move(err), msg)); } } // namespace tensorexpr } // namespace jit } // namespace torch namespace llvm { namespace orc { class PytorchLLVMJITImpl; class TORCH_API PytorchLLVMJIT { public: PytorchLLVMJIT( c10::optional triple, c10::optional cpu, c10::optional attrs); ~PytorchLLVMJIT(); void addModule(std::unique_ptr M, std::unique_ptr C); JITSymbol findSymbol(const std::string Name); bool hasSymbol(const std::string& Name); TargetMachine& getTargetMachine(); const DataLayout& getDataLayout(); private: // Use the PImpl idiom here to hide the no-rtti parts of the JIT structure. std::unique_ptr impl_; }; } // end namespace orc } // end namespace llvm #endif // ENABLE LLVM