/arkcompiler/runtime_core/static_core/libllvmbackend/lowering/ |
H A D | gc_barriers.cpp | 31 void EmitPreWRB(llvm::IRBuilder<> *builder, llvm::Value *mem, bool isVolatileMem, llvm::BasicBlock *outBb, in EmitPreWRB() argument 34 auto func = builder->GetInsertBlock()->getParent(); in EmitPreWRB() 37 auto initialBb = builder->GetInsertBlock(); in EmitPreWRB() 50 auto threadStructPtr = builder->CreateIntToPtr(threadRegValue, builder->getPtrTy()); in EmitPreWRB() 52 auto entrypointPtr = builder->CreateConstInBoundsGEP1_32(builder->getInt8Ty(), threadStructPtr, entrypointOffset); in EmitPreWRB() 56 builder->CreateLoad(builder->getPtrTy(), entrypointPtr, "__panda_entrypoint_PreWrbFuncNoBridge_addr"); in EmitPreWRB() 57 auto hasEntrypoint = builder in EmitPreWRB() 82 EmitPostWRB(llvm::IRBuilder< *builder, llvm::Value *mem, llvm::Value *offset, llvm::Value *value, LLVMArkInterface *arkInterface, llvm::Value *threadRegValue, llvm::Value *frameRegValue) EmitPostWRB() argument [all...] |
/arkcompiler/runtime_core/static_core/libllvmbackend/transforms/ |
H A D | runtime_calls.cpp | 24 llvm::Value *GetAddressToTLS(llvm::IRBuilder<> *builder, LLVMArkInterface *arkInterface, uintptr_t tlsOffset) in GetAddressToTLS() argument 26 auto threadRegValue = GetThreadRegValue(builder, arkInterface); in GetAddressToTLS() 27 auto threadRegPtr = builder->CreateIntToPtr(threadRegValue, builder->getPtrTy()); in GetAddressToTLS() 28 return builder->CreateConstInBoundsGEP1_64(builder->getInt8Ty(), threadRegPtr, tlsOffset); in GetAddressToTLS() 31 llvm::Value *LoadTLSValue(llvm::IRBuilder<> *builder, LLVMArkInterface *arkInterface, uintptr_t tlsOffset, in LoadTLSValue() argument 34 auto addr = GetAddressToTLS(builder, arkInterface, tlsOffset); in LoadTLSValue() 35 return builder->CreateLoad(type, addr); in LoadTLSValue() 39 llvm::IRBuilder<> *builder, llv in GetPandaRuntimeFunctionCallee() 38 GetPandaRuntimeFunctionCallee(int entrypoint, llvm::FunctionType *functionProto, llvm::IRBuilder<> *builder, llvm::StringRef prefix) GetPandaRuntimeFunctionCallee() argument 50 CreateEntrypointCallCommon(llvm::IRBuilder< *builder, llvm::Value *threadRegValue, LLVMArkInterface *arkInterface, EntrypointId eid, llvm::ArrayRef<llvm::Value *> arguments, llvm::ArrayRef<llvm::OperandBundleDef> bundle) CreateEntrypointCallCommon() argument 98 GetThreadRegValue(llvm::IRBuilder< *builder, LLVMArkInterface *arkInterface) GetThreadRegValue() argument 110 GetRealFrameRegValue(llvm::IRBuilder< *builder, LLVMArkInterface *arkInterface) GetRealFrameRegValue() argument [all...] |
H A D | builtins.cpp | 39 llvm::CallInst *CreateEntrypointCallHelper(llvm::IRBuilder<> *builder, ark::compiler::RuntimeInterface::EntrypointId id, in CreateEntrypointCallHelper() argument 43 auto threadReg = GetThreadRegValue(builder, arkInterface); in CreateEntrypointCallHelper() 45 builder, threadReg, arkInterface, static_cast<ark::llvmbackend::runtime_calls::EntrypointId>(id), arguments, in CreateEntrypointCallHelper() 54 llvm::Value *PostWRBHelper(llvm::IRBuilder<> *builder, llvm::CallInst *inst, LLVMArkInterface *arkInterface) in PostWRBHelper() argument 61 auto threadReg = GetThreadRegValue(builder, arkInterface); in PostWRBHelper() 62 ark::llvmbackend::gc_barriers::EmitPostWRB(builder, mem, offset, value, arkInterface, threadReg, nullptr); in PostWRBHelper() 65 llvm::Value *FastClassLoadingHelper(llvm::IRBuilder<> *builder, LLVMArkInterface *arkInterface, in FastClassLoadingHelper() argument 73 auto dataPtr = builder->CreateConstInBoundsGEP1_32(builder->getInt8Ty(), methodValue, offset); in FastClassLoadingHelper() 74 auto classAddr = builder in FastClassLoadingHelper() 80 SlowClassLoadingHelper(llvm::IRBuilder< *builder, llvm::CallInst *inst, LLVMArkInterface *arkInterface, llvm::BasicBlock *continuation, bool forceInit) SlowClassLoadingHelper() argument 135 LowerLoadClassHelper(llvm::IRBuilder< *builder, llvm::CallInst *inst, LLVMArkInterface *arkInterface, bool forceInit) LowerLoadClassHelper() argument 165 PreWRBHelper(llvm::IRBuilder< *builder, llvm::CallInst *inst, LLVMArkInterface *arkInterface) PreWRBHelper() argument 343 LowerLenArray(llvm::IRBuilder< *builder, llvm::CallInst *inst) LowerLenArray() argument 353 LowerLoadString(llvm::IRBuilder< *builder, llvm::CallInst *inst, LLVMArkInterface *arkInterface) LowerLoadString() argument 395 LowerResolveVirtual(llvm::IRBuilder< *builder, llvm::CallInst *inst, LLVMArkInterface *arkInterface) LowerResolveVirtual() argument 419 LowerBuiltin(llvm::IRBuilder< *builder, llvm::CallInst *inst, LLVMArkInterface *arkInterface) LowerBuiltin() argument [all...] |
H A D | runtime_calls.h | 31 llvm::Value *GetAddressToTLS(llvm::IRBuilder<> *builder, LLVMArkInterface *arkInterface, uintptr_t tlsOffset); 32 llvm::Value *LoadTLSValue(llvm::IRBuilder<> *builder, LLVMArkInterface *arkInterface, uintptr_t tlsOffset, 36 llvm::IRBuilder<> *builder, llvm::StringRef prefix = ""); 39 llvm::CallInst *CreateEntrypointCallCommon(llvm::IRBuilder<> *builder, llvm::Value *threadRegValue, 44 llvm::Value *GetThreadRegValue(llvm::IRBuilder<> *builder, LLVMArkInterface *arkInterface); 45 llvm::Value *GetRealFrameRegValue(llvm::IRBuilder<> *builder, LLVMArkInterface *arkInterface);
|
/arkcompiler/ets_runtime/ecmascript/compiler/tests/ |
H A D | global_value_numbering_test.cpp | 53 CircuitBuilder builder(&circuit); in HWTEST_F_L0() 54 Environment env(0, &builder); in HWTEST_F_L0() 55 builder.SetEnvironment(&env); in HWTEST_F_L0() 56 auto x = builder.Arguments(1); in HWTEST_F_L0() 57 auto y = builder.Arguments(2); in HWTEST_F_L0() 58 auto z = builder.Arguments(3); in HWTEST_F_L0() 59 auto add1 = builder.Int64Add(x, y); in HWTEST_F_L0() 60 auto add2 = builder.Int64Add(x, y); in HWTEST_F_L0() 61 auto add3 = builder.Int64Add(x, z); in HWTEST_F_L0() 79 CircuitBuilder builder( in HWTEST_F_L0() [all...] |
H A D | loop_optimization_test.cpp | 67 CircuitBuilder builder(&circuit); in HWTEST_F_L0() 68 Environment env(0, &builder); in HWTEST_F_L0() 70 builder.SetEnvironment(&env); in HWTEST_F_L0() 71 auto array = builder.Arguments(1); in HWTEST_F_L0() 73 DEFVALUE(index, (&builder), VariableType::INT32(), builder.Int32(0)); in HWTEST_F_L0() 74 DEFVALUE(sum, (&builder), VariableType::INT32(), builder.Int32(0)); in HWTEST_F_L0() 79 builder.Jump(&loopHead); in HWTEST_F_L0() 80 builder in HWTEST_F_L0() [all...] |
H A D | typed_array_lowering_test.cpp | 49 CircuitBuilder builder(&circuit); in HWTEST_F_L0() 50 Environment env(0, &builder); in HWTEST_F_L0() 52 builder.SetEnvironment(&env); in HWTEST_F_L0() 53 auto array = builder.Arguments(1); in HWTEST_F_L0() 54 auto loadLength = builder.LoadTypedArrayLength(array, ParamType::AnyType()); in HWTEST_F_L0() 57 auto convert = builder.ConvertInt32ToTaggedInt(loadLength); in HWTEST_F_L0() 58 builder.Return(convert); in HWTEST_F_L0() 78 CircuitBuilder builder(&circuit); in HWTEST_F_L0() 79 Environment env(0, &builder); in HWTEST_F_L0() 81 builder in HWTEST_F_L0() [all...] |
H A D | constant_folding_test.cpp | 64 CircuitBuilder builder(&circuit); in HWTEST_F_L0() 65 Environment env(0, &builder); in HWTEST_F_L0() 67 builder.SetEnvironment(&env); in HWTEST_F_L0() 69 DEFVALUE(number1, (&builder), VariableType::INT32(), builder.Int32(14)); in HWTEST_F_L0() 70 DEFVALUE(number2, (&builder), VariableType::INT32(), builder.Int32(7)); in HWTEST_F_L0() 72 auto sum = builder.Int32Add(*number1, *number2); in HWTEST_F_L0() 73 auto convert = builder.ConvertInt32ToTaggedInt(sum); in HWTEST_F_L0() 74 builder in HWTEST_F_L0() [all...] |
H A D | dead_code_elimination_test.cpp | 43 CircuitBuilder builder(&circuit); in HWTEST_F_L0() 46 auto arg0 = builder.Arguments(0); in HWTEST_F_L0() 70 CircuitBuilder builder(&circuit); in HWTEST_F_L0() 71 Environment env(0, &builder); in HWTEST_F_L0() 72 builder.SetEnvironment(&env); in HWTEST_F_L0() 76 auto arg0 = builder.Arguments(0); in HWTEST_F_L0() 77 auto arg1 = builder.Arguments(1); in HWTEST_F_L0() 78 auto arg2 = builder.Arguments(2); in HWTEST_F_L0() 102 CircuitBuilder builder(&circuit); in HWTEST_F_L0() 103 Environment env(0, &builder); in HWTEST_F_L0() [all...] |
H A D | instruction_combine_test.cpp | 68 CircuitBuilder builder(&circuit); in HWTEST_F_L0() 69 Environment env(0, &builder); in HWTEST_F_L0() 70 builder.SetEnvironment(&env); in HWTEST_F_L0() 76 auto x = builder.Arguments(1); in HWTEST_F_L0() 77 auto const_i64_0 = builder.Int64(0); in HWTEST_F_L0() 78 auto test_x_add_0 = builder.Int64Add(x, const_i64_0); in HWTEST_F_L0() 83 auto const_i64_1 = builder.Int64(1); in HWTEST_F_L0() 84 auto const_i64_2 = builder.Int64(2); in HWTEST_F_L0() 85 auto result = instcombie.VisitGate(builder.Int64Add(const_i64_1, const_i64_2)); in HWTEST_F_L0() 90 auto const_i64_max = builder in HWTEST_F_L0() [all...] |
/arkcompiler/runtime_core/static_core/runtime/tooling/inspector/types/ |
H A D | exception_details.cpp | 24 return [this](JsonObjectBuilder &builder) { in ToJson() 25 builder.AddProperty("exceptionId", exceptionId_); in ToJson() 26 builder.AddProperty("text", text_); in ToJson() 27 builder.AddProperty("lineNumber", lineNumber_); in ToJson() 28 builder.AddProperty("columnNumber", columnNumber_); in ToJson() 31 builder.AddProperty("scriptId", *scriptId_); in ToJson() 34 builder.AddProperty("url", *url_); in ToJson() 37 builder.AddProperty("exception", exception_->ToJson()); in ToJson() 40 builder.AddProperty("executionContextId", *executionContextId_); in ToJson()
|
H A D | json_build_helpers.h | 28 func = [func = std::move(func), value = std::move(value)](JsonArrayBuilder &builder) { in AddElement() 29 func(builder); in AddElement() 30 builder.Add(value); in AddElement() 37 func = [func = std::move(func), key, value = std::move(value)](JsonObjectBuilder &builder) { in AddProperty() 38 func(builder); in AddProperty() 39 builder.AddProperty(key, value); in AddProperty()
|
/arkcompiler/runtime_core/compiler/tests/ |
H A D | code_info_test.cpp | 47 auto EmitCode(CodeInfoBuilder &builder) in EmitCode() argument 53 builder.Encode(&data, data.size() * BITS_PER_BYTE); in EmitCode() 103 CodeInfoBuilder builder(RUNTIME_ARCH, GetAllocator()); in TEST_F() 104 builder.BeginMethod(1, 3); in TEST_F() 110 builder.BeginStackMap(10, 20, &stack_roots, reg_roots.to_ullong(), true, false); in TEST_F() 111 builder.AddVReg(vregs[0]); in TEST_F() 112 builder.AddVReg(vregs[1]); in TEST_F() 113 builder.AddVReg(vregs[2]); in TEST_F() 114 builder.EndStackMap(); in TEST_F() 115 builder in TEST_F() [all...] |
/arkcompiler/runtime_core/libpandabase/tests/ |
H A D | bit_table_test.cpp | 64 BitTableBuilder<BitTableDefault<1>> builder(GetAllocator()); in TEST_F() 65 using Builder = decltype(builder); in TEST_F() 67 builder.Encode(out); in TEST_F() 82 BitTableBuilder<BitTableDefault<1>> builder(GetAllocator()); in TEST_F() 83 using Builder = decltype(builder); in TEST_F() 84 builder.Emplace(Builder::Entry({Builder::NO_VALUE})); in TEST_F() 86 builder.Encode(out); in TEST_F() 104 BitTableBuilder<BitTableDefault<1>> builder(GetAllocator()); in TEST_F() 105 using Builder = decltype(builder); in TEST_F() 106 builder in TEST_F() [all...] |
H A D | json_builder_test.cpp | 112 JsonArrayBuilder builder; in TEST() local 114 builder.Add(1); in TEST() 115 builder.Add("foo"); in TEST() 116 builder.Add([](JsonArrayBuilder &x) { x.Add([](JsonArrayBuilder &) {}); }); in TEST() 118 EXPECT_EQ(std::move(builder).Build(), "[1,\"foo\",[[]]]"); in TEST() 131 JsonObjectBuilder builder; in TEST() local 133 builder.AddProperty("x", 1); in TEST() 134 builder.AddProperty("y", "foo"); in TEST() 135 builder.AddProperty("z", [](JsonObjectBuilder &z) { z.AddProperty("_", [](JsonObjectBuilder &) {}); }); in TEST() 137 EXPECT_EQ(std::move(builder) in TEST() [all...] |
/arkcompiler/runtime_core/static_core/libllvmbackend/transforms/passes/ark_frame_lowering/ |
H A D | frame_builder.cpp | 81 // AMD64 Frame builder implementation 115 InlineAsmBuilder builder(&mblock, mblock.begin()); in InsertPrologue() 130 builder.CreateInlineAsm("push %rbp"); in InsertPrologue() 131 builder.CreateInlineAsm("movq %rsp, %rbp"); in InsertPrologue() 132 builder.CreateInlineAsm("lea ${0:c}(%rsp), %rsp", {-(FRAME_SIZE - SLOT_SIZE * 2U)}); in InsertPrologue() 133 builder.CreateInlineAsm("movq %rdi, ${0:c}(%rsp)", {METHOD_OFFSET}); in InsertPrologue() 137 builder.CreateInlineAsm("movq $0, ${1:c}(%rsp)", {frameFlags, FLAGS_OFFSET}); in InsertPrologue() 138 builder.CreateInlineAsm("movb $$0x1, ${0:c}(%r15)", {tlsFrameOffset}); in InsertPrologue() 139 builder.CreateInlineAsm("movq %r15, ${0:c}(%rsp)", {CALLEE_OFFSET - 0 * SLOT_SIZE}); in InsertPrologue() 140 builder in InsertPrologue() 299 EmitCSRSaveRestoreCode(InlineAsmBuilder *builder, uint32_t regsMask, std::string_view asmSingleReg, std::string_view asmPairRegs, ssize_t calleeOffset) EmitCSRSaveRestoreCode() argument [all...] |
/arkcompiler/runtime_core/static_core/compiler/tests/ |
H A D | code_info_test.cpp | 49 auto EmitCode(CodeInfoBuilder &builder) in EmitCode() argument 55 builder.Encode(&data, data.size() * BITS_PER_BYTE); in EmitCode() 154 CodeInfoBuilder builder(RUNTIME_ARCH, GetAllocator()); in TEST_F() 155 builder.BeginMethod(1U, 3U); in TEST_F() 165 builder.BeginStackMap(10U, 20U, &ss, true); in TEST_F() 166 builder.AddVReg(vregs[0U]); in TEST_F() 167 builder.AddVReg(vregs[1U]); in TEST_F() 168 builder.AddVReg(vregs[2U]); in TEST_F() 169 builder.EndStackMap(); in TEST_F() 170 builder in TEST_F() [all...] |
/arkcompiler/runtime_core/static_core/libpandabase/tests/ |
H A D | bit_table_test.cpp | 69 BitTableBuilder<BitTableDefault<1U>> builder(GetAllocator()); in TEST_F() 70 using Builder = decltype(builder); in TEST_F() 72 builder.Encode(out); in TEST_F() 87 BitTableBuilder<BitTableDefault<1U>> builder(GetAllocator()); in TEST_F() 88 using Builder = decltype(builder); in TEST_F() 89 builder.Emplace(Builder::Entry({Builder::NO_VALUE})); in TEST_F() 91 builder.Encode(out); in TEST_F() 109 BitTableBuilder<BitTableDefault<1U>> builder(GetAllocator()); in TEST_F() 110 using Builder = decltype(builder); in TEST_F() 111 builder in TEST_F() [all...] |
H A D | json_builder_test.cpp | 123 JsonArrayBuilder builder; in TEST() local 125 builder.Add(1U); in TEST() 126 builder.Add("foo"); in TEST() 127 builder.Add([](JsonArrayBuilder &x) { x.Add([](JsonArrayBuilder &) {}); }); in TEST() 129 EXPECT_EQ(std::move(builder).Build(), "[1,\"foo\",[[]]]"); in TEST() 142 JsonObjectBuilder builder; in TEST() local 144 builder.AddProperty("x", 1U); in TEST() 145 builder.AddProperty("y", "foo"); in TEST() 146 builder.AddProperty("z", [](JsonObjectBuilder &z) { z.AddProperty("_", [](JsonObjectBuilder &) {}); }); in TEST() 148 EXPECT_EQ(std::move(builder) in TEST() [all...] |
/arkcompiler/runtime_core/static_core/libllvmbackend/transforms/passes/ |
H A D | panda_runtime_lowering.cpp | 93 auto builder = llvm::IRBuilder<>(inst); in LowerCallStatic() local 94 auto calleePtr = GetMethodOrResolverPtr(&builder, inst); in LowerCallStatic() 96 auto calleeAddr = builder.CreateInBoundsGEP(builder.getInt8Ty(), calleePtr, epOffset, "ep_addr"); in LowerCallStatic() 101 auto calleeExec = builder.CreateLoad(builder.getPtrTy(), calleeAddr, {inst->getCalledFunction()->getName(), "_p"}); in LowerCallStatic() 114 auto builder = llvm::IRBuilder<>(inst); in LowerCallVirtual() local 118 auto method = ark::llvmbackend::utils::CreateLoadMethodUsingVTable(thiz, func, methodId, &builder, arkInterface_); in LowerCallVirtual() 121 auto calleeAdr = builder.CreateConstInBoundsGEP1_32(builder in LowerCallVirtual() 128 GetMethodOrResolverPtr(llvm::IRBuilder< *builder, llvm::CallInst *inst) GetMethodOrResolverPtr() argument 141 auto builder = llvm::IRBuilder<>(inst); LowerBuiltin() local [all...] |
/arkcompiler/runtime_core/static_core/libllvmbackend/ |
H A D | utils.cpp | 69 llvm::Value *CreateLoadClassFromObject(llvm::Value *object, llvm::IRBuilder<> *builder, in CreateLoadClassFromObject() argument 75 auto ptrData = builder->CreateConstInBoundsGEP1_32(builder->getInt8Ty(), object, dataOff); in CreateLoadClassFromObject() 76 auto classAddress = builder->CreateLoad(builder->getInt32Ty(), ptrData); in CreateLoadClassFromObject() 77 return builder->CreateIntToPtr(classAddress, builder->getPtrTy()); in CreateLoadClassFromObject() 81 llvm::IRBuilder<> *builder, LLVMArkInterface *arkInterface) in CreateLoadMethodUsingVTable() 86 auto classPtr = CreateLoadClassFromObject(thiz, builder, arkInterface); in CreateLoadMethodUsingVTable() 88 auto methodPtr = builder in CreateLoadMethodUsingVTable() 80 CreateLoadMethodUsingVTable(llvm::Value *thiz, llvm::Function *caller, size_t methodId, llvm::IRBuilder<> *builder, LLVMArkInterface *arkInterface) CreateLoadMethodUsingVTable() argument [all...] |
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_phase/src/ |
H A D | phase_impl.cpp | 26 builder = new (std::nothrow) MIRBuilderExt(module); in FuncOptimizeImpl() 27 CHECK_FATAL(builder != nullptr, "New fail in FuncOptimizeImpl ctor!"); in FuncOptimizeImpl() 32 if (builder != nullptr) { in ~FuncOptimizeImpl() 33 delete builder; in ~FuncOptimizeImpl() 34 builder = nullptr; in ~FuncOptimizeImpl()
|
/arkcompiler/runtime_core/static_core/compiler/tools/debug/ |
H A D | jit_writer.cpp | 109 ElfBuilder<ARCH, true> builder; in WriteImpl() local 112 builder.SetCodeName("(jitted) " + methodName_); in WriteImpl() 115 builder.GetTextSection()->SetDataProvider(std::move(codeProvider)); in WriteImpl() 117 builder.SetFrameData(GetFrameData()); in WriteImpl() 118 builder.Build("jitted_code"); in WriteImpl() 120 auto elfSize {builder.GetFileSize()}; in WriteImpl() 127 builder.HackAddressesForJit(elfData); in WriteImpl() 130 builder.Write(elf_); in WriteImpl() 133 code_ = builder.GetTextSectionData(); in WriteImpl()
|
/arkcompiler/runtime_core/static_core/compiler/aot/aot_builder/ |
H A D | llvm_aot_builder.cpp | 42 ElfBuilder<ARCH> builder; in GetSectionsAddressesImpl() local 46 PrepareElfBuilder(builder, cmdline, fileName); in GetSectionsAddressesImpl() 47 builder.Build(fileName); in GetSectionsAddressesImpl() 51 auto textSection = builder.GetTextSection(); in GetSectionsAddressesImpl() 52 auto roDataSections = builder.GetRoDataSections(); in GetSectionsAddressesImpl() 53 auto aotSection = builder.GetAotSection(); in GetSectionsAddressesImpl() 54 auto gotSection = builder.GetGotSection(); in GetSectionsAddressesImpl()
|
/arkcompiler/runtime_core/static_core/libllvmbackend/object_code/ |
H A D | code_info_producer.cpp | 64 void CodeInfoProducer::Produce(Method *method, compiler::CodeInfoBuilder *builder) const in Produce() 66 builder->BeginMethod(0, compilation_->GetVirtualRegistersCount(method)); in Produce() 70 builder->BeginStackMap(0, 0, &ss, false); in Produce() 71 builder->EndStackMap(); in Produce() 73 ConvertStackMaps(method, builder); in Produce() 74 EncodeNullChecks(method, builder); in Produce() 85 builder->SetSavedCalleeRegsMask(xregsMask, vregsMask); in Produce() 86 builder->EndMethod(); in Produce() 173 void CodeInfoProducer::BuildSingleRegMap(compiler::CodeInfoBuilder *builder, const LLVMStackMap::RecordAccessor &record, 187 builder [all...] |