Home
last modified time | relevance | path

Searched refs:compiler (Results 1 - 25 of 1617) sorted by relevance

12345678910>>...65

/arkcompiler/runtime_core/static_core/bytecode_optimizer/
H A Dcodegen.cpp20 void DoLdaObj(compiler::Register reg, std::vector<pandasm::Ins> &result) in DoLdaObj()
22 if (reg != compiler::ACC_REG_ID) { in DoLdaObj()
27 void DoLda(compiler::Register reg, std::vector<pandasm::Ins> &result) in DoLda()
29 if (reg != compiler::ACC_REG_ID) { in DoLda()
34 void DoLda64(compiler::Register reg, std::vector<pandasm::Ins> &result) in DoLda64()
36 if (reg != compiler::ACC_REG_ID) { in DoLda64()
41 void DoStaObj(compiler::Register reg, std::vector<pandasm::Ins> &result) in DoStaObj()
43 if (reg != compiler::ACC_REG_ID) { in DoStaObj()
48 void DoSta(compiler::Register reg, std::vector<pandasm::Ins> &result) in DoSta()
50 if (reg != compiler in DoSta()
[all...]
H A Dreg_encoder.cpp18 #include "compiler/optimizer/ir/basicblock.h"
22 static bool IsDstRegNeedRenumbering([[maybe_unused]] ark::compiler::Inst *inst) in IsDstRegNeedRenumbering()
27 [[maybe_unused]] ark::compiler::Inst *inst) in CheckWidthAbcKitIntrinsic()
37 if (inst->GetOpcode() != compiler::Opcode::Intrinsic) { in IsIntrinsicRange()
46 case compiler::RuntimeInterface::IntrinsicId::INTRINSIC_CALLI_RANGE_DYN: in IsIntrinsicRange()
47 case compiler::RuntimeInterface::IntrinsicId::INTRINSIC_CALLI_THIS_RANGE_DYN: in IsIntrinsicRange()
48 case compiler::RuntimeInterface::IntrinsicId::INTRINSIC_NEWOBJ_DYNRANGE: in IsIntrinsicRange()
49 case compiler::RuntimeInterface::IntrinsicId::INTRINSIC_SUPER_CALL: in IsIntrinsicRange()
51 case compiler::RuntimeInterface::IntrinsicId::ECMA_CALLIRANGEDYN_PREF_IMM16_V8: in IsIntrinsicRange()
52 case compiler in IsIntrinsicRange()
[all...]
H A Dreg_encoder.h19 #include "compiler/optimizer/ir/graph.h"
20 #include "compiler/optimizer/pass.h"
21 #include "compiler/optimizer/ir/inst.h"
22 #include "compiler/optimizer/ir/graph_visitor.h"
27 * After compiler's register allocation layout of the virtual frame looks like:
74 compiler::Register reg;
76 compiler::DataType::Type type;
78 RegContent() : reg(compiler::INVALID_REG), type(compiler::DataType::NO_TYPE) {} in RegContent()
79 RegContent(compiler in RegContent()
[all...]
H A Dreg_acc_alloc.cpp18 #include "compiler/optimizer/ir/basicblock.h"
19 #include "compiler/optimizer/ir/inst.h"
24 static std::pair<bool, compiler::BasicBlock *> IsAccWriteBetweenBlocks(compiler::BasicBlock *block, in IsAccWriteBetweenBlocks()
25 compiler::Inst *dstInst) in IsAccWriteBetweenBlocks()
44 static bool IsAccWriteInInst(compiler::Inst *inst) in IsAccWriteInInst()
55 if (inst->GetDstReg() == compiler::ACC_REG_ID) { in IsAccWriteInInst()
62 static bool IsAccReadFromReg(compiler::Inst *srcInst, compiler::Inst *inst) in IsAccReadFromReg()
67 compiler in IsAccReadFromReg()
[all...]
H A Dcheck_resolver.cpp17 #include "compiler/optimizer/ir/basicblock.h"
18 #include "compiler/optimizer/ir/inst.h"
22 static void ReplaceCheck(compiler::Inst *inst) in ReplaceCheck()
25 size_t i = (op == compiler::Opcode::BoundsCheck || op == compiler::Opcode::RefTypeCheck) ? 1U : 0U; in ReplaceCheck()
28 user.GetInst()->SetFlag(compiler::inst_flags::CAN_THROW); in ReplaceCheck()
31 inst->ClearFlag(compiler::inst_flags::NO_DCE); // DCE will remove the check inst in ReplaceCheck()
34 static void MarkLenArray(compiler::Inst *inst) in MarkLenArray()
44 inst->SetFlag(compiler::inst_flags::NO_DCE); in MarkLenArray()
46 inst->SetFlag(compiler in MarkLenArray()
[all...]
H A Dreg_acc_alloc.h25 class RegAccAlloc : public compiler::Optimization {
29 explicit RegAccAlloc(compiler::Graph *graph) : compiler::Optimization(graph), accMarker_(graph->NewMarker()) {}; in RegAccAlloc()
37 return compiler::g_options.IsCompilerRegAccAlloc();
48 bool IsPhiOptimizable(compiler::Inst *phi) const;
49 bool IsAccRead(compiler::Inst *inst) const;
50 bool IsAccWrite(compiler::Inst *inst) const;
52 bool CanUserReadAcc(compiler::Inst *inst, compiler::Inst *user) const;
53 bool IsPhiAccReady(compiler
[all...]
H A Dcommon.h19 #include "compiler/optimizer/ir/constants.h"
20 #include "compiler/optimizer/ir/inst.h"
22 namespace ark::compiler { namespace in ark
24 } // namespace ark::compiler
27 constexpr compiler::Register MIN_REGISTER_NUMBER = 0;
28 constexpr compiler::Register MAX_NUM_SHORT_CALL_ARGS = 2;
29 constexpr compiler::Register MAX_NUM_NON_RANGE_ARGS = 4;
30 constexpr compiler::Register MAX_NUM_INPUTS = MAX_NUM_NON_RANGE_ARGS;
31 constexpr ark::compiler::Register NUM_COMPACTLY_ENCODED_REGS = 16;
32 [[maybe_unused]] constexpr compiler
[all...]
H A Dcodegen.h23 #include "compiler/optimizer/pass.h"
24 #include "compiler/optimizer/ir/basicblock.h"
25 #include "compiler/optimizer/ir/graph.h"
26 #include "compiler/optimizer/ir/graph_visitor.h"
32 using compiler::BasicBlock;
33 using compiler::Inst;
34 using compiler::Opcode;
36 void DoLdaObj(compiler::Register reg, std::vector<pandasm::Ins> &result);
37 void DoLda(compiler::Register reg, std::vector<pandasm::Ins> &result);
38 void DoLda64(compiler
[all...]
H A Dcommon.cpp17 #include "compiler/optimizer/ir/basicblock.h"
18 #include "compiler/optimizer/ir/graph.h"
22 uint8_t AccReadIndex(const compiler::Inst *inst) in AccReadIndex()
29 case compiler::Opcode::LoadArray: in AccReadIndex()
30 case compiler::Opcode::StoreObject: in AccReadIndex()
31 case compiler::Opcode::StoreStatic: in AccReadIndex()
32 case compiler::Opcode::NewArray: in AccReadIndex()
34 case compiler::Opcode::StoreArray: in AccReadIndex()
54 bool IsAbcKitIntrinsicRange([[maybe_unused]] compiler::RuntimeInterface::IntrinsicId intrinsicId) in IsAbcKitIntrinsicRange()
58 bool IsAbcKitIntrinsic([[maybe_unused]] compiler in IsAbcKitIntrinsicRange()
[all...]
H A Doptimize_bytecode.cpp28 #include "compiler/optimizer/ir/constants.h"
29 #include "compiler/optimizer/ir_builder/ir_builder.h"
30 #include "compiler/optimizer/ir_builder/pbc_iterator.h"
31 #include "compiler/optimizer/optimizations/branch_elimination.h"
32 #include "compiler/optimizer/optimizations/code_sink.h"
33 #include "compiler/optimizer/optimizations/cse.h"
34 #include "compiler/optimizer/optimizations/cleanup.h"
35 #include "compiler/optimizer/optimizations/if_merging.h"
36 #include "compiler/optimizer/optimizations/licm.h"
37 #include "compiler/optimize
[all...]
/arkcompiler/runtime_core/static_core/irtoc/backend/
H A Dfunction.cpp17 #include "compiler/codegen_boundary.h"
18 #include "compiler/codegen_fastpath.h"
19 #include "compiler/codegen_interpreter.h"
20 #include "compiler/optimizer_run.h"
21 #include "compiler/dangling_pointers_checker.h"
22 #include "compiler/optimizer/code_generator/target_info.h"
23 #include "compiler/optimizer/optimizations/balance_expressions.h"
24 #include "compiler/optimizer/optimizations/branch_elimination.h"
25 #include "compiler/optimizer/optimizations/checks_elimination.h"
26 #include "compiler/optimize
[all...]
/arkcompiler/runtime_core/bytecode_optimizer/
H A Dreg_encoder.h19 #include "compiler/optimizer/ir/graph.h"
20 #include "compiler/optimizer/pass.h"
21 #include "compiler/optimizer/ir/inst.h"
22 #include "compiler/optimizer/ir/graph_visitor.h"
27 * After compiler's register allocation layout of the virtual frame looks like:
73 compiler::Register reg;
74 compiler::DataType::Type type;
76 RegContent() : reg(compiler::INVALID_REG), type(compiler::DataType::NO_TYPE) {} in RegContent()
77 RegContent(compiler in RegContent()
[all...]
H A Dreg_encoder.cpp18 #include "compiler/optimizer/ir/basicblock.h"
24 if (inst->GetOpcode() != compiler::Opcode::Intrinsic) { in IsIntrinsicRange()
29 case compiler::RuntimeInterface::IntrinsicId::CALLRANGE_IMM8_IMM8_V8: in IsIntrinsicRange()
30 case compiler::RuntimeInterface::IntrinsicId::WIDE_CALLRANGE_PREF_IMM16_V8: in IsIntrinsicRange()
31 case compiler::RuntimeInterface::IntrinsicId::CALLTHISRANGE_IMM8_IMM8_V8: in IsIntrinsicRange()
32 case compiler::RuntimeInterface::IntrinsicId::WIDE_CALLTHISRANGE_PREF_IMM16_V8: in IsIntrinsicRange()
33 case compiler::RuntimeInterface::IntrinsicId::NEWOBJRANGE_IMM8_IMM8_V8: in IsIntrinsicRange()
34 case compiler::RuntimeInterface::IntrinsicId::NEWOBJRANGE_IMM16_IMM8_V8: in IsIntrinsicRange()
35 case compiler::RuntimeInterface::IntrinsicId::WIDE_NEWOBJRANGE_PREF_IMM16_V8: in IsIntrinsicRange()
36 case compiler in IsIntrinsicRange()
[all...]
H A Dreg_acc_alloc.h25 class RegAccAlloc : public compiler::Optimization {
29 explicit RegAccAlloc(compiler::Graph *graph) : compiler::Optimization(graph), acc_marker_(graph->NewMarker()) {}; in RegAccAlloc()
35 return compiler::options.IsCompilerRegAccAlloc();
46 bool IsPhiOptimizable(compiler::Inst *phi) const;
47 bool IsAccRead(compiler::Inst *inst) const;
48 bool IsAccWrite(compiler::Inst *inst) const;
50 bool CanUserReadAcc(compiler::Inst *inst, compiler::Inst *user) const;
51 bool IsPhiAccReady(compiler
[all...]
H A Dreg_acc_alloc.cpp18 #include "compiler/optimizer/ir/basicblock.h"
19 #include "compiler/optimizer/ir/inst.h"
26 bool IsAccWriteBetween(compiler::Inst *src_inst, compiler::Inst *dst_inst) in IsAccWriteBetween()
30 compiler::BasicBlock *block = src_inst->GetBasicBlock(); in IsAccWriteBetween()
31 compiler::Inst *inst = src_inst->GetNext(); in IsAccWriteBetween()
59 compiler::Inst *input = inst->GetInput(AccReadIndex(inst)).GetInst(); in IsAccWriteBetween()
61 if (input->GetDstReg() != compiler::ACC_REG_ID) { in IsAccWriteBetween()
76 inline bool RegAccAlloc::IsPhiOptimizable(compiler::Inst *phi) const in IsPhiOptimizable()
78 ASSERT(phi->GetOpcode() == compiler in IsPhiOptimizable()
[all...]
H A Dcodegen.h24 #include "compiler/optimizer/pass.h"
25 #include "compiler/optimizer/ir/basicblock.h"
26 #include "compiler/optimizer/ir/graph.h"
27 #include "compiler/optimizer/ir/graph_visitor.h"
32 using compiler::BasicBlock;
33 using compiler::Inst;
34 using compiler::Opcode;
36 void DoLda(compiler::Register reg, std::vector<pandasm::Ins> &result);
37 void DoSta(compiler::Register reg, std::vector<pandasm::Ins> &result);
39 class BytecodeGen : public compiler
[all...]
H A Dcodegen.cpp24 void DoLda(compiler::Register reg, std::vector<pandasm::Ins> &result) in DoLda()
26 if (reg != compiler::ACC_REG_ID) { in DoLda()
31 void DoSta(compiler::Register reg, std::vector<pandasm::Ins> &result) in DoSta()
33 if (reg != compiler::ACC_REG_ID) { in DoSta()
38 void BytecodeGen::AppendCatchBlock(uint32_t type_id, const compiler::BasicBlock *try_begin, in AppendCatchBlock()
39 const compiler::BasicBlock *try_end, const compiler::BasicBlock *catch_begin, in AppendCatchBlock()
40 const compiler::BasicBlock *catch_end) in AppendCatchBlock()
54 void BytecodeGen::VisitTryBegin(const compiler::BasicBlock *bb) in VisitTryBegin()
127 ASSERT(bb->GetSuccsBlocks().size() == compiler in EmitJump()
[all...]
H A Dmodule_constant_analyzer.h21 #include "compiler/optimizer/pass.h"
22 #include "compiler/optimizer/ir/graph.h"
23 #include "compiler/optimizer/ir/graph_visitor.h"
28 using compiler::BasicBlock;
29 using compiler::Inst;
30 using compiler::Opcode;
31 using compiler::RuntimeInterface;
43 class ModuleConstantAnalyzer : public compiler::Analysis, public compiler::GraphVisitor {
45 explicit ModuleConstantAnalyzer(compiler
[all...]
/arkcompiler/runtime_core/compiler/optimizer/ir/
H A Dir-dyn-base-types.h19 #include "compiler/optimizer/ir/datatype.h"
24 namespace panda::compiler { namespace in panda
25 inline AnyBaseType NumericDataTypeToAnyType(panda::compiler::DataType::Type type, in NumericDataTypeToAnyType()
26 [[maybe_unused]] panda::compiler::SourceLanguage language) in NumericDataTypeToAnyType()
29 case panda::compiler::DataType::Type::INT32: in NumericDataTypeToAnyType()
30 return panda::compiler::AnyBaseType::ECMASCRIPT_INT_TYPE; in NumericDataTypeToAnyType()
31 case panda::compiler::DataType::Type::UINT32: in NumericDataTypeToAnyType()
32 case panda::compiler::DataType::Type::INT64: in NumericDataTypeToAnyType()
33 case panda::compiler::DataType::Type::UINT64: in NumericDataTypeToAnyType()
34 return panda::compiler in NumericDataTypeToAnyType()
[all...]
/arkcompiler/ets_frontend/ets2panda/checker/
H A DETSchecker.cpp73 compiler::Signatures::BUILTIN_BOOLEAN_CLASS,
74 compiler::Signatures::BUILTIN_BYTE_CLASS,
75 compiler::Signatures::BUILTIN_CHAR_CLASS,
76 compiler::Signatures::BUILTIN_SHORT_CLASS,
77 compiler::Signatures::BUILTIN_INT_CLASS,
78 compiler::Signatures::BUILTIN_LONG_CLASS,
79 compiler::Signatures::BUILTIN_FLOAT_CLASS,
80 compiler::Signatures::BUILTIN_DOUBLE_CLASS,
81 compiler::Signatures::BUILTIN_FUNCTION0_CLASS,
82 compiler
[all...]
/arkcompiler/runtime_core/static_core/libllvmbackend/
H A Dllvm_aot_compiler.cpp16 #include "compiler/aot/compiled_method.h"
17 #include "compiler/code_info/code_info.h"
18 #include "compiler/generated/pipeline_includes.h"
75 #define DEBUG_TYPE "llvm-aot-compiler"
85 ScopedCompilerThread(ark::compiler::RuntimeInterface::ThreadPtr parent, in ScopedCompilerThread()
86 ark::compiler::RuntimeInterface *runtimeInterface) in ScopedCompilerThread()
109 ark::compiler::RuntimeInterface::ThreadPtr old_ {nullptr};
110 ark::compiler::RuntimeInterface::ThreadPtr compiler_ {nullptr};
111 ark::compiler::RuntimeInterface *runtimeInterface_;
135 bool MonitorsCorrect(ark::compiler
[all...]
/arkcompiler/ets_frontend/ets2panda/compiler/core/
H A DJSCompiler.cpp19 #include "compiler/base/catchTable.h"
20 #include "compiler/base/condition.h"
21 #include "compiler/base/lreference.h"
22 #include "compiler/core/pandagen.h"
23 #include "compiler/core/switchBuilder.h"
24 #include "compiler/function/functionBuilder.h"
27 namespace ark::es2panda::compiler { namespace in ark::es2panda
38 compiler::LocalRegScope lrs(pg, st->Scope()->ParamScope()); in Compile()
41 auto lref = compiler::JSLReference::Create(pg, st->Param(), true); in Compile()
49 static compiler
[all...]
/arkcompiler/ets_frontend/es2panda/ir/statements/
H A DforOfStatement.cpp20 #include <compiler/base/catchTable.h>
21 #include <compiler/base/iterators.h>
22 #include <compiler/base/lreference.h>
23 #include <compiler/core/labelTarget.h>
24 #include <compiler/core/pandagen.h>
43 void ForOfStatement::Compile(compiler::PandaGen *pg) const in Compile()
45 compiler::LocalRegScope regScope(pg, scope_); in Compile()
52 compiler::TryContext iterInitTryCtx(pg); in Compile()
60 compiler::VReg exception = pg->AllocReg(); in Compile()
74 compiler in Compile()
[all...]
/arkcompiler/runtime_core/static_core/plugins/ets/runtime/interop_js/
H A Dets_interop_runtime_interface-inl.h18 static std::pair<IntrinsicId, compiler::DataType::Type> GetInfoForInteropConvert(panda_file::Type::TypeId typeId) in GetInfoForInteropConvert()
22 return {IntrinsicId::INTRINSIC_COMPILER_CONVERT_VOID_TO_LOCAL, compiler::DataType::NO_TYPE}; in GetInfoForInteropConvert()
24 return {IntrinsicId::INTRINSIC_COMPILER_CONVERT_U1_TO_LOCAL, compiler::DataType::BOOL}; in GetInfoForInteropConvert()
26 return {IntrinsicId::INTRINSIC_COMPILER_CONVERT_I8_TO_LOCAL, compiler::DataType::INT8}; in GetInfoForInteropConvert()
28 return {IntrinsicId::INTRINSIC_COMPILER_CONVERT_U8_TO_LOCAL, compiler::DataType::UINT8}; in GetInfoForInteropConvert()
30 return {IntrinsicId::INTRINSIC_COMPILER_CONVERT_I16_TO_LOCAL, compiler::DataType::INT16}; in GetInfoForInteropConvert()
32 return {IntrinsicId::INTRINSIC_COMPILER_CONVERT_U16_TO_LOCAL, compiler::DataType::UINT16}; in GetInfoForInteropConvert()
34 return {IntrinsicId::INTRINSIC_COMPILER_CONVERT_I32_TO_LOCAL, compiler::DataType::INT32}; in GetInfoForInteropConvert()
36 return {IntrinsicId::INTRINSIC_COMPILER_CONVERT_U32_TO_LOCAL, compiler::DataType::UINT32}; in GetInfoForInteropConvert()
38 return {IntrinsicId::INTRINSIC_COMPILER_CONVERT_I64_TO_LOCAL, compiler in GetInfoForInteropConvert()
[all...]
/arkcompiler/runtime_core/static_core/bytecode_optimizer/tests/
H A Dcodegen_test.cpp26 #include "compiler/optimizer/optimizations/peepholes.h"
27 #include "compiler/optimizer/optimizations/cleanup.h"
28 #include "compiler/optimizer/optimizations/lowering.h"
29 #include "compiler/optimizer/optimizations/regalloc/reg_alloc_linear_scan.h"
109 EXPECT_TRUE(graph->RunPass<compiler::RegAllocLinearScan>(compiler::EmptyRegMask())); in TEST_F()
126 INST(2U, Opcode::Compare).b().CC(compiler::ConditionCode::CC_EQ).Inputs(0U, 1U); in TEST_F()
128 .SrcType(compiler::DataType::BOOL) in TEST_F()
129 .CC(compiler::ConditionCode::CC_NE) in TEST_F()
146 graph->RunPass<compiler in TEST_F()
[all...]

Completed in 12 milliseconds

12345678910>>...65