5#ifndef V8_COMPILER_CODE_ASSEMBLER_COMPILATION_JOB_H_
6#define V8_COMPILER_CODE_ASSEMBLER_COMPILATION_JOB_H_
36 CodeKind code_kind,
const char* name,
50 struct TFDataAndPipeline;
58 CodeKind code_kind,
const char* name);
Status PrepareJobImpl(Isolate *isolate) final
AssemblerOptions assembler_options_
std::unique_ptr< JumpOptimizationInfo > jump_opt_
friend class CodeAssemblerTester
CodeAssemblerState code_assembler_state_
static V8_EXPORT_PRIVATE std::unique_ptr< CodeAssemblerCompilationJob > NewJobForTesting(Isolate *isolate, Builtin builtin, CodeAssemblerGenerator generator, CodeAssemblerInstaller installer, std::function< compiler::CallDescriptor *(Zone *)> get_call_descriptor, CodeKind code_kind, const char *name)
CodeAssemblerCompilationJob(const CodeAssemblerCompilationJob &)=delete
RawMachineAssembler * raw_assembler()
Status FinalizeJobImpl(Isolate *isolate) final
std::function< void(Builtin builtin, Handle< Code > code)> CodeAssemblerInstaller
CodeAssemblerCompilationJob(Isolate *isolate, Builtin builtin, CodeAssemblerGenerator generator, CodeAssemblerInstaller installer, const AssemblerOptions &assembler_options, std::function< compiler::CallDescriptor *(Zone *)> get_call_descriptor, CodeKind code_kind, const char *name, const ProfileDataFromFile *profile_data, int finalize_order)
CodeAssemblerGenerator generator_
std::unique_ptr< TurbofanPipelineStatistics > pipeline_statistics_
std::optional< NodeOriginTable > node_origins_
const ProfileDataFromFile * profile_data_
OptimizedCompilationInfo compilation_info_
int FinalizeOrder() const final
CodeAssemblerInstaller installer_
virtual Handle< Code > FinalizeCode(Isolate *isolate)=0
static constexpr int kNoFinalizeOrder
static bool ShouldOptimizeJumps(Isolate *isolate)
std::function< void(compiler::CodeAssemblerState *)> CodeAssemblerGenerator
virtual PipelineImpl * EmplacePipeline(Isolate *isolate)=0
CodeAssemblerCompilationJob & operator=(const CodeAssemblerCompilationJob &)=delete
std::unique_ptr< RawMachineAssembler > raw_assembler_
#define DCHECK_NE(v1, v2)
#define V8_EXPORT_PRIVATE