Lines Matching defs:intrinsic

33 // Check that intrinsic enum values fit within space set aside in ArtMethod modifier flags.
43 // Function that returns whether an intrinsic is static/direct or virtual.
47 return kInterface; // Non-sensical for intrinsic.
59 // Function that returns whether an intrinsic needs an environment or not.
63 return kNeedsEnvironmentOrCache; // Non-sensical for intrinsic.
75 // Function that returns whether an intrinsic has side effects.
91 // Function that returns whether an intrinsic can throw exceptions.
107 static bool CheckInvokeType(Intrinsics intrinsic, HInvoke* invoke)
109 // Whenever the intrinsic is marked as static, report an error if we find an InvokeVirtual.
111 // Whenever the intrinsic is marked as direct and we find an InvokeVirtual, a devirtualization
113 // intrinsic, but that method is in a different dex file on which we do not have a
115 // make sure that the intrinsic is actually for some final method (or in a final class), as
121 InvokeType intrinsic_type = GetIntrinsicInvokeType(intrinsic);
147 LOG(FATAL) << "Unknown intrinsic invoke type: " << intrinsic_type;
168 Intrinsics intrinsic = static_cast<Intrinsics>(art_method->GetIntrinsic());
169 if (CheckInvokeType(intrinsic, invoke) == false) {
174 invoke->SetIntrinsic(intrinsic,
175 NeedsEnvironmentOrCache(intrinsic),
176 GetSideEffects(intrinsic),
177 GetExceptions(intrinsic));
193 << "Found an intrinsic with unexpected invoke type: "
202 std::ostream& operator<<(std::ostream& os, const Intrinsics& intrinsic) {
203 switch (intrinsic) {
247 // The intrinsic will call if it needs to allocate a j.l.Integer.