summaryrefslogtreecommitdiff
path: root/compiler/optimizing
diff options
context:
space:
mode:
author Santiago Aboy Solanes <solanes@google.com> 2024-08-29 14:23:04 +0100
committer Santiago Aboy Solanes <solanes@google.com> 2024-09-02 12:19:35 +0000
commitd3472f2a4c8214d3dc24a2c39d949562bb6be1db (patch)
tree15c197c3032a4354ea2d46b2435ccd224667ccc2 /compiler/optimizing
parent01d865abe818bdf41baf966bc456a9f5d45e3cc9 (diff)
cleanup: change Set/GetIntrinsic in ArtMethod to use Intrinsics
Test: art/test/testrunner/testrunner.py --host --64 --optimizing -b Change-Id: I253a6bfe6bba7e02e527722c4632cb60938fe1c6
Diffstat (limited to 'compiler/optimizing')
-rw-r--r--compiler/optimizing/inliner.cc5
-rw-r--r--compiler/optimizing/instruction_builder.cc2
-rw-r--r--compiler/optimizing/nodes.cc2
3 files changed, 4 insertions, 5 deletions
diff --git a/compiler/optimizing/inliner.cc b/compiler/optimizing/inliner.cc
index 45322e7e27..90df4521e8 100644
--- a/compiler/optimizing/inliner.cc
+++ b/compiler/optimizing/inliner.cc
@@ -1346,8 +1346,7 @@ bool HInliner::TryDevirtualize(HInvoke* invoke_instruction,
// Don't devirtualize to an intrinsic invalid after the builder phase. The ArtMethod might be an
// intrinsic even when the HInvoke isn't e.g. java.lang.CharSequence.isEmpty (not an intrinsic)
// can get devirtualized into java.lang.String.isEmpty (which is an intrinsic).
- if (method->IsIntrinsic() &&
- !IsValidIntrinsicAfterBuilder(static_cast<Intrinsics>(method->GetIntrinsic()))) {
+ if (method->IsIntrinsic() && !IsValidIntrinsicAfterBuilder(method->GetIntrinsic())) {
return false;
}
@@ -1598,7 +1597,7 @@ bool HInliner::TryBuildAndInline(HInvoke* invoke_instruction,
// another chance before we try to inline it.
if (invoke_instruction->GetResolvedMethod() != method &&
method->IsIntrinsic() &&
- IsValidIntrinsicAfterBuilder(static_cast<Intrinsics>(method->GetIntrinsic()))) {
+ IsValidIntrinsicAfterBuilder(method->GetIntrinsic())) {
MaybeRecordStat(stats_, MethodCompilationStat::kIntrinsicRecognized);
// For simplicity, always create a new instruction to replace the existing
// invoke.
diff --git a/compiler/optimizing/instruction_builder.cc b/compiler/optimizing/instruction_builder.cc
index 356322e85b..f3676bbc02 100644
--- a/compiler/optimizing/instruction_builder.cc
+++ b/compiler/optimizing/instruction_builder.cc
@@ -1944,7 +1944,7 @@ bool HInstructionBuilder::BuildSimpleIntrinsic(ArtMethod* method,
uint32_t dex_pc,
const InstructionOperands& operands,
const char* shorty) {
- Intrinsics intrinsic = static_cast<Intrinsics>(method->GetIntrinsic());
+ Intrinsics intrinsic = method->GetIntrinsic();
DCHECK_NE(intrinsic, Intrinsics::kNone);
constexpr DataType::Type kInt32 = DataType::Type::kInt32;
constexpr DataType::Type kInt64 = DataType::Type::kInt64;
diff --git a/compiler/optimizing/nodes.cc b/compiler/optimizing/nodes.cc
index a45d250307..588f4d7ce2 100644
--- a/compiler/optimizing/nodes.cc
+++ b/compiler/optimizing/nodes.cc
@@ -3450,7 +3450,7 @@ static inline IntrinsicExceptions GetExceptionsIntrinsic(Intrinsics i) {
void HInvoke::SetResolvedMethod(ArtMethod* method, bool enable_intrinsic_opt) {
if (method != nullptr && method->IsIntrinsic() && enable_intrinsic_opt) {
- Intrinsics intrinsic = static_cast<Intrinsics>(method->GetIntrinsic());
+ Intrinsics intrinsic = method->GetIntrinsic();
SetIntrinsic(intrinsic,
NeedsEnvironmentIntrinsic(intrinsic),
GetSideEffectsIntrinsic(intrinsic),