diff options
| author | 2018-08-03 08:57:16 +0000 | |
|---|---|---|
| committer | 2018-08-03 08:57:16 +0000 | |
| commit | b27d874ebc0c067d96994a6ebe3c10eaeb2e4a75 (patch) | |
| tree | 3084a0b326e98115f5d0621362d5b7c368775669 /compiler/optimizing/nodes.h | |
| parent | 8f5992d8c81d4d9a0805c649cdcf859328d5c1b6 (diff) | |
| parent | a9f303c089aa2b2fc82d97201352945678ef54ae (diff) | |
Merge "Rewrite Class init entrypoint to take a Class arg."
Diffstat (limited to 'compiler/optimizing/nodes.h')
| -rw-r--r-- | compiler/optimizing/nodes.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/compiler/optimizing/nodes.h b/compiler/optimizing/nodes.h index 16a7417301..8b9e1da0d3 100644 --- a/compiler/optimizing/nodes.h +++ b/compiler/optimizing/nodes.h @@ -6284,6 +6284,13 @@ class HLoadClass FINAL : public HInstruction { bool IsInBootImage() const { return GetPackedFlag<kFlagIsInBootImage>(); } bool MustGenerateClinitCheck() const { return GetPackedFlag<kFlagGenerateClInitCheck>(); } + bool MustResolveTypeOnSlowPath() const { + // Check that this instruction has a slow path. + DCHECK(GetLoadKind() != LoadKind::kRuntimeCall); // kRuntimeCall calls on main path. + DCHECK(GetLoadKind() == LoadKind::kBssEntry || MustGenerateClinitCheck()); + return GetLoadKind() == LoadKind::kBssEntry; + } + void MarkInBootImage() { SetPackedFlag<kFlagIsInBootImage>(true); } |