diff options
Diffstat (limited to 'compiler/optimizing')
-rw-r--r-- | compiler/optimizing/code_generator_arm64.cc | 5 | ||||
-rw-r--r-- | compiler/optimizing/code_generator_arm_vixl.cc | 5 | ||||
-rw-r--r-- | compiler/optimizing/code_generator_riscv64.cc | 9 | ||||
-rw-r--r-- | compiler/optimizing/code_generator_riscv64.h | 3 | ||||
-rw-r--r-- | compiler/optimizing/code_generator_x86.cc | 5 | ||||
-rw-r--r-- | compiler/optimizing/code_generator_x86_64.cc | 5 | ||||
-rw-r--r-- | compiler/optimizing/intrinsics.cc | 6 | ||||
-rw-r--r-- | compiler/optimizing/intrinsics.h | 9 | ||||
-rw-r--r-- | compiler/optimizing/intrinsics_arm64.h | 9 | ||||
-rw-r--r-- | compiler/optimizing/intrinsics_arm_vixl.h | 9 | ||||
-rw-r--r-- | compiler/optimizing/intrinsics_x86.h | 9 | ||||
-rw-r--r-- | compiler/optimizing/intrinsics_x86_64.h | 9 | ||||
-rw-r--r-- | compiler/optimizing/nodes.cc | 17 |
13 files changed, 34 insertions, 66 deletions
diff --git a/compiler/optimizing/code_generator_arm64.cc b/compiler/optimizing/code_generator_arm64.cc index 7605eb19cc..7af0465ff0 100644 --- a/compiler/optimizing/code_generator_arm64.cc +++ b/compiler/optimizing/code_generator_arm64.cc @@ -35,6 +35,7 @@ #include "interpreter/mterp/nterp.h" #include "intrinsics.h" #include "intrinsics_arm64.h" +#include "intrinsics_list.h" #include "intrinsics_utils.h" #include "linker/linker_patch.h" #include "lock_word.h" @@ -955,15 +956,13 @@ struct IsUnimplemented { UNIMPLEMENTED_INTRINSIC_LIST_ARM64(TRUE_OVERRIDE) #undef TRUE_OVERRIDE -#include "intrinsics_list.h" static constexpr bool kIsIntrinsicUnimplemented[] = { false, // kNone #define IS_UNIMPLEMENTED(Intrinsic, ...) \ IsUnimplemented<Intrinsics::k##Intrinsic>().is_unimplemented, - INTRINSICS_LIST(IS_UNIMPLEMENTED) + ART_INTRINSICS_LIST(IS_UNIMPLEMENTED) #undef IS_UNIMPLEMENTED }; -#undef INTRINSICS_LIST } // namespace detail diff --git a/compiler/optimizing/code_generator_arm_vixl.cc b/compiler/optimizing/code_generator_arm_vixl.cc index faf5608f5d..f18d571253 100644 --- a/compiler/optimizing/code_generator_arm_vixl.cc +++ b/compiler/optimizing/code_generator_arm_vixl.cc @@ -33,6 +33,7 @@ #include "interpreter/mterp/nterp.h" #include "intrinsics.h" #include "intrinsics_arm_vixl.h" +#include "intrinsics_list.h" #include "intrinsics_utils.h" #include "linker/linker_patch.h" #include "mirror/array-inl.h" @@ -1924,15 +1925,13 @@ struct IsUnimplemented { UNIMPLEMENTED_INTRINSIC_LIST_ARM(TRUE_OVERRIDE) #undef TRUE_OVERRIDE -#include "intrinsics_list.h" static constexpr bool kIsIntrinsicUnimplemented[] = { false, // kNone #define IS_UNIMPLEMENTED(Intrinsic, ...) \ IsUnimplemented<Intrinsics::k##Intrinsic>().is_unimplemented, - INTRINSICS_LIST(IS_UNIMPLEMENTED) + ART_INTRINSICS_LIST(IS_UNIMPLEMENTED) #undef IS_UNIMPLEMENTED }; -#undef INTRINSICS_LIST } // namespace detail diff --git a/compiler/optimizing/code_generator_riscv64.cc b/compiler/optimizing/code_generator_riscv64.cc index 7a99adcd21..50acde2949 100644 --- a/compiler/optimizing/code_generator_riscv64.cc +++ b/compiler/optimizing/code_generator_riscv64.cc @@ -96,7 +96,7 @@ Location InvokeDexCallingConventionVisitorRISCV64::GetNextLocation(DataType::Typ LOG(FATAL) << "Unexpected parameter type " << type; } - // Note: Unlike the RISCV-V C/C++ calling convention, managed ABI does not use + // Note: Unlike the RISC-V C/C++ calling convention, managed ABI does not use // GPRs to pass FP args when we run out of FPRs. if (DataType::IsFloatingPointType(type) && float_index_ < calling_convention.GetNumberOfFpuRegisters()) { @@ -2406,8 +2406,6 @@ void InstructionCodeGeneratorRISCV64::VisitVecPredNot(HVecPredNot* instruction) LOG(FATAL) << "Unimplemented"; } -#undef __ - namespace detail { // Mark which intrinsics we don't have handcrafted code for. @@ -2428,14 +2426,12 @@ static constexpr bool kIsIntrinsicUnimplemented[] = { false, // kNone #define IS_UNIMPLEMENTED(Intrinsic, ...) \ IsUnimplemented<Intrinsics::k##Intrinsic>().is_unimplemented, - INTRINSICS_LIST(IS_UNIMPLEMENTED) + ART_INTRINSICS_LIST(IS_UNIMPLEMENTED) #undef IS_UNIMPLEMENTED }; } // namespace detail -#define __ down_cast<Riscv64Assembler*>(GetAssembler())-> // NOLINT - CodeGeneratorRISCV64::CodeGeneratorRISCV64(HGraph* graph, const CompilerOptions& compiler_options, OptimizingCompilerStats* stats) @@ -2480,7 +2476,6 @@ void CodeGeneratorRISCV64::MaybeIncrementHotness(bool is_frame_entry) { DCHECK(info != nullptr); DCHECK(!HasEmptyFrame()); uint64_t address = reinterpret_cast64<uint64_t>(info); - Riscv64Label done; ScratchRegisterScope srs(GetAssembler()); XRegister tmp = srs.AllocateXRegister(); __ LoadConst64(tmp, address); diff --git a/compiler/optimizing/code_generator_riscv64.h b/compiler/optimizing/code_generator_riscv64.h index e024ebdd24..1c87cdf608 100644 --- a/compiler/optimizing/code_generator_riscv64.h +++ b/compiler/optimizing/code_generator_riscv64.h @@ -22,6 +22,7 @@ #include "base/macros.h" #include "code_generator.h" #include "driver/compiler_options.h" +#include "intrinsics_list.h" #include "optimizing/locations.h" #include "utils/riscv64/assembler_riscv64.h" @@ -47,7 +48,7 @@ static constexpr FRegister kRuntimeParameterFpuRegisters[] = { static constexpr size_t kRuntimeParameterFpuRegistersLength = arraysize(kRuntimeParameterFpuRegisters); -#define UNIMPLEMENTED_INTRINSIC_LIST_RISCV64(V) INTRINSICS_LIST(V) +#define UNIMPLEMENTED_INTRINSIC_LIST_RISCV64(V) ART_INTRINSICS_LIST(V) // Method register on invoke. static const XRegister kArtMethodRegister = A0; diff --git a/compiler/optimizing/code_generator_x86.cc b/compiler/optimizing/code_generator_x86.cc index 940f24640c..190361a5ce 100644 --- a/compiler/optimizing/code_generator_x86.cc +++ b/compiler/optimizing/code_generator_x86.cc @@ -27,6 +27,7 @@ #include "heap_poisoning.h" #include "interpreter/mterp/nterp.h" #include "intrinsics.h" +#include "intrinsics_list.h" #include "intrinsics_utils.h" #include "intrinsics_x86.h" #include "jit/profiling_info.h" @@ -1124,15 +1125,13 @@ struct IsUnimplemented { UNIMPLEMENTED_INTRINSIC_LIST_X86(TRUE_OVERRIDE) #undef TRUE_OVERRIDE -#include "intrinsics_list.h" static constexpr bool kIsIntrinsicUnimplemented[] = { false, // kNone #define IS_UNIMPLEMENTED(Intrinsic, ...) \ IsUnimplemented<Intrinsics::k##Intrinsic>().is_unimplemented, - INTRINSICS_LIST(IS_UNIMPLEMENTED) + ART_INTRINSICS_LIST(IS_UNIMPLEMENTED) #undef IS_UNIMPLEMENTED }; -#undef INTRINSICS_LIST } // namespace detail diff --git a/compiler/optimizing/code_generator_x86_64.cc b/compiler/optimizing/code_generator_x86_64.cc index f944a85f42..394a186c1b 100644 --- a/compiler/optimizing/code_generator_x86_64.cc +++ b/compiler/optimizing/code_generator_x86_64.cc @@ -27,6 +27,7 @@ #include "heap_poisoning.h" #include "interpreter/mterp/nterp.h" #include "intrinsics.h" +#include "intrinsics_list.h" #include "intrinsics_utils.h" #include "intrinsics_x86_64.h" #include "jit/profiling_info.h" @@ -1512,15 +1513,13 @@ struct IsUnimplemented { UNIMPLEMENTED_INTRINSIC_LIST_X86_64(TRUE_OVERRIDE) #undef TRUE_OVERRIDE -#include "intrinsics_list.h" static constexpr bool kIsIntrinsicUnimplemented[] = { false, // kNone #define IS_UNIMPLEMENTED(Intrinsic, ...) \ IsUnimplemented<Intrinsics::k##Intrinsic>().is_unimplemented, - INTRINSICS_LIST(IS_UNIMPLEMENTED) + ART_INTRINSICS_LIST(IS_UNIMPLEMENTED) #undef IS_UNIMPLEMENTED }; -#undef INTRINSICS_LIST } // namespace detail diff --git a/compiler/optimizing/intrinsics.cc b/compiler/optimizing/intrinsics.cc index 774deec438..8357e57c1f 100644 --- a/compiler/optimizing/intrinsics.cc +++ b/compiler/optimizing/intrinsics.cc @@ -27,6 +27,7 @@ #include "gc/space/image_space.h" #include "image-inl.h" #include "intrinsic_objects.h" +#include "intrinsics_list.h" #include "nodes.h" #include "obj_ptr-inl.h" #include "scoped_thread_state_change-inl.h" @@ -43,10 +44,7 @@ std::ostream& operator<<(std::ostream& os, const Intrinsics& intrinsic) { case Intrinsics::k ## Name: \ os << # Name; \ break; -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef STATIC_INTRINSICS_LIST -#undef VIRTUAL_INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS } return os; diff --git a/compiler/optimizing/intrinsics.h b/compiler/optimizing/intrinsics.h index 8cb7f6ac4f..b6c7e1b997 100644 --- a/compiler/optimizing/intrinsics.h +++ b/compiler/optimizing/intrinsics.h @@ -19,6 +19,7 @@ #include "base/macros.h" #include "code_generator.h" +#include "intrinsics_list.h" #include "nodes.h" #include "optimization.h" #include "parallel_move_resolver.h" @@ -48,9 +49,7 @@ class IntrinsicVisitor : public ValueObject { case Intrinsics::k ## Name: \ Visit ## Name(invoke); \ return; -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS // Do not put a default case. That way the compiler will complain if we missed a case. @@ -61,9 +60,7 @@ class IntrinsicVisitor : public ValueObject { #define OPTIMIZING_INTRINSICS(Name, ...) \ virtual void Visit##Name([[maybe_unused]] HInvoke* invoke) {} -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS static void MoveArguments(HInvoke* invoke, diff --git a/compiler/optimizing/intrinsics_arm64.h b/compiler/optimizing/intrinsics_arm64.h index a0ccf87f7b..b20cea65f4 100644 --- a/compiler/optimizing/intrinsics_arm64.h +++ b/compiler/optimizing/intrinsics_arm64.h @@ -19,6 +19,7 @@ #include "base/macros.h" #include "intrinsics.h" +#include "intrinsics_list.h" namespace vixl { namespace aarch64 { @@ -47,9 +48,7 @@ class IntrinsicLocationsBuilderARM64 final : public IntrinsicVisitor { #define OPTIMIZING_INTRINSICS(Name, IsStatic, NeedsEnvironmentOrCache, SideEffects, Exceptions, ...) \ void Visit ## Name(HInvoke* invoke) override; -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS // Check whether an invoke is an intrinsic, and if so, create a location summary. Returns whether @@ -72,9 +71,7 @@ class IntrinsicCodeGeneratorARM64 final : public IntrinsicVisitor { #define OPTIMIZING_INTRINSICS(Name, IsStatic, NeedsEnvironmentOrCache, SideEffects, Exceptions, ...) \ void Visit ## Name(HInvoke* invoke) override; -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS private: diff --git a/compiler/optimizing/intrinsics_arm_vixl.h b/compiler/optimizing/intrinsics_arm_vixl.h index 54475bcc7e..f517d21c9d 100644 --- a/compiler/optimizing/intrinsics_arm_vixl.h +++ b/compiler/optimizing/intrinsics_arm_vixl.h @@ -19,6 +19,7 @@ #include "base/macros.h" #include "intrinsics.h" +#include "intrinsics_list.h" #include "utils/arm/assembler_arm_vixl.h" namespace art HIDDEN { @@ -36,9 +37,7 @@ class IntrinsicLocationsBuilderARMVIXL final : public IntrinsicVisitor { #define OPTIMIZING_INTRINSICS(Name, IsStatic, NeedsEnvironmentOrCache, SideEffects, Exceptions, ...) \ void Visit ## Name(HInvoke* invoke) override; -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS // Check whether an invoke is an intrinsic, and if so, create a location summary. Returns whether @@ -63,9 +62,7 @@ class IntrinsicCodeGeneratorARMVIXL final : public IntrinsicVisitor { #define OPTIMIZING_INTRINSICS(Name, IsStatic, NeedsEnvironmentOrCache, SideEffects, Exceptions, ...) \ void Visit ## Name(HInvoke* invoke) override; -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS private: diff --git a/compiler/optimizing/intrinsics_x86.h b/compiler/optimizing/intrinsics_x86.h index 77c236d244..fc2f0e3fbd 100644 --- a/compiler/optimizing/intrinsics_x86.h +++ b/compiler/optimizing/intrinsics_x86.h @@ -19,6 +19,7 @@ #include "base/macros.h" #include "intrinsics.h" +#include "intrinsics_list.h" namespace art HIDDEN { @@ -39,9 +40,7 @@ class IntrinsicLocationsBuilderX86 final : public IntrinsicVisitor { #define OPTIMIZING_INTRINSICS(Name, IsStatic, NeedsEnvironmentOrCache, SideEffects, Exceptions, ...) \ void Visit ## Name(HInvoke* invoke) override; -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS // Check whether an invoke is an intrinsic, and if so, create a location summary. Returns whether @@ -64,9 +63,7 @@ class IntrinsicCodeGeneratorX86 final : public IntrinsicVisitor { #define OPTIMIZING_INTRINSICS(Name, IsStatic, NeedsEnvironmentOrCache, SideEffects, Exceptions, ...) \ void Visit ## Name(HInvoke* invoke) override; -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS private: diff --git a/compiler/optimizing/intrinsics_x86_64.h b/compiler/optimizing/intrinsics_x86_64.h index 59fe815a94..d0ee6f622d 100644 --- a/compiler/optimizing/intrinsics_x86_64.h +++ b/compiler/optimizing/intrinsics_x86_64.h @@ -19,6 +19,7 @@ #include "base/macros.h" #include "intrinsics.h" +#include "intrinsics_list.h" namespace art HIDDEN { @@ -39,9 +40,7 @@ class IntrinsicLocationsBuilderX86_64 final : public IntrinsicVisitor { #define OPTIMIZING_INTRINSICS(Name, IsStatic, NeedsEnvironmentOrCache, SideEffects, Exceptions, ...) \ void Visit ## Name(HInvoke* invoke) override; -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS // Check whether an invoke is an intrinsic, and if so, create a location summary. Returns whether @@ -64,9 +63,7 @@ class IntrinsicCodeGeneratorX86_64 final : public IntrinsicVisitor { #define OPTIMIZING_INTRINSICS(Name, IsStatic, NeedsEnvironmentOrCache, SideEffects, Exceptions, ...) \ void Visit ## Name(HInvoke* invoke) override; -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS private: diff --git a/compiler/optimizing/nodes.cc b/compiler/optimizing/nodes.cc index 9caa766858..0d78771bf4 100644 --- a/compiler/optimizing/nodes.cc +++ b/compiler/optimizing/nodes.cc @@ -36,6 +36,7 @@ #include "code_generator.h" #include "common_dominator.h" #include "intrinsics.h" +#include "intrinsics_list.h" #include "mirror/class-inl.h" #include "scoped_thread_state_change-inl.h" #include "ssa_builder.h" @@ -3523,9 +3524,7 @@ std::ostream& operator<<(std::ostream& os, TypeCheckKind rhs) { static_assert( \ static_cast<uint32_t>(Intrinsics::k ## Name) <= (kAccIntrinsicBits >> CTZ(kAccIntrinsicBits)), \ "Instrinsics enumeration space overflow."); -#include "intrinsics_list.h" - INTRINSICS_LIST(CHECK_INTRINSICS_ENUM_VALUES) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(CHECK_INTRINSICS_ENUM_VALUES) #undef CHECK_INTRINSICS_ENUM_VALUES // Function that returns whether an intrinsic needs an environment or not. @@ -3536,9 +3535,7 @@ static inline IntrinsicNeedsEnvironment NeedsEnvironmentIntrinsic(Intrinsics i) #define OPTIMIZING_INTRINSICS(Name, InvokeType, NeedsEnv, SideEffects, Exceptions, ...) \ case Intrinsics::k ## Name: \ return NeedsEnv; -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS } return kNeedsEnvironment; @@ -3552,9 +3549,7 @@ static inline IntrinsicSideEffects GetSideEffectsIntrinsic(Intrinsics i) { #define OPTIMIZING_INTRINSICS(Name, InvokeType, NeedsEnv, SideEffects, Exceptions, ...) \ case Intrinsics::k ## Name: \ return SideEffects; -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS } return kAllSideEffects; @@ -3568,9 +3563,7 @@ static inline IntrinsicExceptions GetExceptionsIntrinsic(Intrinsics i) { #define OPTIMIZING_INTRINSICS(Name, InvokeType, NeedsEnv, SideEffects, Exceptions, ...) \ case Intrinsics::k ## Name: \ return Exceptions; -#include "intrinsics_list.h" - INTRINSICS_LIST(OPTIMIZING_INTRINSICS) -#undef INTRINSICS_LIST + ART_INTRINSICS_LIST(OPTIMIZING_INTRINSICS) #undef OPTIMIZING_INTRINSICS } return kCanThrow; |