Commit 912118c0 authored by Camillo Bruni's avatar Camillo Bruni Committed by V8 LUCI CQ

[builtins] Remove IC_BUILTIN macros

The IC_BUILTIN and IC_BUILTIN_PARAM macro prevent code navigation and
they only avoid very simple, non-performance critical code.

Change-Id: Ic9d10a9c53a1890149d86b43a6989afae7f1d6f4
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2871464Reviewed-by: 's avatarIgor Sheludko <ishell@chromium.org>
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#74381}
parent ea0eedcc
...@@ -10,70 +10,221 @@ ...@@ -10,70 +10,221 @@
namespace v8 { namespace v8 {
namespace internal { namespace internal {
#define IC_BUILTIN(Name) \ void Builtins::Generate_LoadIC(compiler::CodeAssemblerState* state) {
void Builtins::Generate_##Name(compiler::CodeAssemblerState* state) { \ AccessorAssembler assembler(state);
AccessorAssembler assembler(state); \ assembler.GenerateLoadIC();
assembler.Generate##Name(); \ }
} void Builtins::Generate_LoadIC_Megamorphic(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLoadIC_Megamorphic();
}
void Builtins::Generate_LoadIC_Noninlined(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLoadIC_Noninlined();
}
void Builtins::Generate_LoadIC_NoFeedback(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLoadIC_NoFeedback();
}
void Builtins::Generate_LoadICTrampoline(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLoadICTrampoline();
}
void Builtins::Generate_LoadICBaseline(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLoadICBaseline();
}
void Builtins::Generate_LoadICTrampoline_Megamorphic(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLoadICTrampoline_Megamorphic();
}
void Builtins::Generate_LoadSuperIC(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLoadSuperIC();
}
void Builtins::Generate_LoadSuperICBaseline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLoadSuperICBaseline();
}
void Builtins::Generate_KeyedLoadIC(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateKeyedLoadIC();
}
void Builtins::Generate_KeyedLoadIC_Megamorphic(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateKeyedLoadIC_Megamorphic();
}
void Builtins::Generate_KeyedLoadIC_PolymorphicName(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateKeyedLoadIC_PolymorphicName();
}
void Builtins::Generate_KeyedLoadICTrampoline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateKeyedLoadICTrampoline();
}
void Builtins::Generate_KeyedLoadICBaseline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateKeyedLoadICBaseline();
}
void Builtins::Generate_KeyedLoadICTrampoline_Megamorphic(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateKeyedLoadICTrampoline_Megamorphic();
}
void Builtins::Generate_LoadGlobalIC_NoFeedback(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLoadGlobalIC_NoFeedback();
}
void Builtins::Generate_StoreGlobalIC(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateStoreGlobalIC();
}
void Builtins::Generate_StoreGlobalICTrampoline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateStoreGlobalICTrampoline();
}
void Builtins::Generate_StoreGlobalICBaseline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateStoreGlobalICBaseline();
}
void Builtins::Generate_StoreIC(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateStoreIC();
}
void Builtins::Generate_StoreICTrampoline(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateStoreICTrampoline();
}
void Builtins::Generate_StoreICBaseline(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateStoreICBaseline();
}
void Builtins::Generate_KeyedStoreIC(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateKeyedStoreIC();
}
void Builtins::Generate_KeyedStoreICTrampoline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateKeyedStoreICTrampoline();
}
void Builtins::Generate_KeyedStoreICBaseline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateKeyedStoreICBaseline();
}
void Builtins::Generate_StoreInArrayLiteralIC(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateStoreInArrayLiteralIC();
}
void Builtins::Generate_StoreInArrayLiteralICBaseline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateStoreInArrayLiteralICBaseline();
}
void Builtins::Generate_CloneObjectIC(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateCloneObjectIC();
}
void Builtins::Generate_CloneObjectICBaseline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateCloneObjectICBaseline();
}
void Builtins::Generate_CloneObjectIC_Slow(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateCloneObjectIC_Slow();
}
void Builtins::Generate_KeyedHasIC(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateKeyedHasIC();
}
void Builtins::Generate_KeyedHasICBaseline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateKeyedHasICBaseline();
}
void Builtins::Generate_KeyedHasIC_Megamorphic(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateKeyedHasIC_Megamorphic();
}
void Builtins::Generate_KeyedHasIC_PolymorphicName(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateKeyedHasIC_PolymorphicName();
}
void Builtins::Generate_LoadGlobalIC(compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLoadGlobalIC(NOT_INSIDE_TYPEOF);
}
#define IC_BUILTIN_PARAM(BuiltinName, GeneratorName, parameter) \ void Builtins::Generate_LoadGlobalICInsideTypeof(
void Builtins::Generate_##BuiltinName(compiler::CodeAssemblerState* state) { \ compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state); \ AccessorAssembler assembler(state);
assembler.Generate##GeneratorName(parameter); \ assembler.GenerateLoadGlobalIC(INSIDE_TYPEOF);
} }
IC_BUILTIN(LoadIC) void Builtins::Generate_LoadGlobalICTrampoline(
IC_BUILTIN(LoadIC_Megamorphic) compiler::CodeAssemblerState* state) {
IC_BUILTIN(LoadIC_Noninlined) AccessorAssembler assembler(state);
IC_BUILTIN(LoadIC_NoFeedback) assembler.GenerateLoadGlobalICTrampoline(NOT_INSIDE_TYPEOF);
IC_BUILTIN(LoadICTrampoline) }
IC_BUILTIN(LoadICBaseline)
IC_BUILTIN(LoadICTrampoline_Megamorphic)
IC_BUILTIN(LoadSuperIC)
IC_BUILTIN(LoadSuperICBaseline)
IC_BUILTIN(KeyedLoadIC)
IC_BUILTIN(KeyedLoadIC_Megamorphic)
IC_BUILTIN(KeyedLoadIC_PolymorphicName)
IC_BUILTIN(KeyedLoadICTrampoline)
IC_BUILTIN(KeyedLoadICBaseline)
IC_BUILTIN(KeyedLoadICTrampoline_Megamorphic)
IC_BUILTIN(LoadGlobalIC_NoFeedback)
IC_BUILTIN(StoreGlobalIC)
IC_BUILTIN(StoreGlobalICTrampoline)
IC_BUILTIN(StoreGlobalICBaseline)
IC_BUILTIN(StoreIC)
IC_BUILTIN(StoreICTrampoline)
IC_BUILTIN(StoreICBaseline)
IC_BUILTIN(KeyedStoreIC)
IC_BUILTIN(KeyedStoreICTrampoline)
IC_BUILTIN(KeyedStoreICBaseline)
IC_BUILTIN(StoreInArrayLiteralIC)
IC_BUILTIN(StoreInArrayLiteralICBaseline)
IC_BUILTIN(CloneObjectIC)
IC_BUILTIN(CloneObjectICBaseline)
IC_BUILTIN(CloneObjectIC_Slow)
IC_BUILTIN(KeyedHasIC)
IC_BUILTIN(KeyedHasICBaseline)
IC_BUILTIN(KeyedHasIC_Megamorphic)
IC_BUILTIN(KeyedHasIC_PolymorphicName)
IC_BUILTIN_PARAM(LoadGlobalIC, LoadGlobalIC, NOT_INSIDE_TYPEOF) void Builtins::Generate_LoadGlobalICInsideTypeofTrampoline(
IC_BUILTIN_PARAM(LoadGlobalICInsideTypeof, LoadGlobalIC, INSIDE_TYPEOF) compiler::CodeAssemblerState* state) {
IC_BUILTIN_PARAM(LoadGlobalICTrampoline, LoadGlobalICTrampoline, AccessorAssembler assembler(state);
NOT_INSIDE_TYPEOF) assembler.GenerateLoadGlobalICTrampoline(INSIDE_TYPEOF);
IC_BUILTIN_PARAM(LoadGlobalICInsideTypeofTrampoline, LoadGlobalICTrampoline, }
INSIDE_TYPEOF)
IC_BUILTIN_PARAM(LoadGlobalICBaseline, LoadGlobalICBaseline, NOT_INSIDE_TYPEOF) void Builtins::Generate_LoadGlobalICBaseline(
IC_BUILTIN_PARAM(LoadGlobalICInsideTypeofBaseline, LoadGlobalICBaseline, compiler::CodeAssemblerState* state) {
INSIDE_TYPEOF) AccessorAssembler assembler(state);
IC_BUILTIN_PARAM(LookupGlobalICBaseline, LookupGlobalICBaseline, assembler.GenerateLoadGlobalICBaseline(NOT_INSIDE_TYPEOF);
NOT_INSIDE_TYPEOF) }
IC_BUILTIN_PARAM(LookupGlobalICInsideTypeofBaseline, LookupGlobalICBaseline,
INSIDE_TYPEOF) void Builtins::Generate_LoadGlobalICInsideTypeofBaseline(
IC_BUILTIN_PARAM(LookupContextBaseline, LookupContextBaseline, compiler::CodeAssemblerState* state) {
NOT_INSIDE_TYPEOF) AccessorAssembler assembler(state);
IC_BUILTIN_PARAM(LookupContextInsideTypeofBaseline, LookupContextBaseline, assembler.GenerateLoadGlobalICBaseline(INSIDE_TYPEOF);
INSIDE_TYPEOF) }
void Builtins::Generate_LookupGlobalICBaseline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLookupGlobalICBaseline(NOT_INSIDE_TYPEOF);
}
void Builtins::Generate_LookupGlobalICInsideTypeofBaseline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLookupGlobalICBaseline(INSIDE_TYPEOF);
}
void Builtins::Generate_LookupContextBaseline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLookupContextBaseline(NOT_INSIDE_TYPEOF);
}
void Builtins::Generate_LookupContextInsideTypeofBaseline(
compiler::CodeAssemblerState* state) {
AccessorAssembler assembler(state);
assembler.GenerateLookupContextBaseline(INSIDE_TYPEOF);
}
TF_BUILTIN(DynamicCheckMaps, CodeStubAssembler) { TF_BUILTIN(DynamicCheckMaps, CodeStubAssembler) {
auto map = Parameter<Map>(Descriptor::kMap); auto map = Parameter<Map>(Descriptor::kMap);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment