@@ -786,7 +786,7 @@ void InlineResult::Report()
786
786
// Was the result NEVER? If so we might want to propagate this to
787
787
// the runtime.
788
788
789
- if (IsNever () && m_Policy->PropagateNeverToRuntime ())
789
+ if (IsNever () && m_Policy->PropagateNeverToRuntime () && (m_Callee != nullptr ) )
790
790
{
791
791
// If we know the callee, and if the observation that got us
792
792
// to this Never inline state is something *other* than
@@ -795,36 +795,16 @@ void InlineResult::Report()
795
795
// so that future inline attempts for this callee fail faster.
796
796
//
797
797
InlineObservation obs = m_Policy->GetObservation ();
798
-
799
- bool report = (m_Callee != nullptr );
800
- bool suppress = (obs == InlineObservation::CALLEE_IS_NOINLINE);
801
- bool dynamicPgo = m_RootCompiler->fgPgoDynamic ;
802
-
803
- // If dynamic pgo is active, only propagate noinline back to metadata
804
- // when there is a CALLEE FATAL observation. We want to make sure
805
- // not to block future inlines based on performance or throughput considerations.
806
- //
807
- // Note fgPgoDynamic (and hence dynamicPgo) is true iff TieredPGO is enabled globally.
808
- // In particular this value does not depend on the root method having PGO data.
809
- //
810
- if (dynamicPgo)
811
- {
812
- InlineTarget target = InlGetTarget (obs);
813
- InlineImpact impact = InlGetImpact (obs);
814
- suppress = (target != InlineTarget::CALLEE) || (impact != InlineImpact::FATAL);
815
- }
816
-
817
- if (report && !suppress)
798
+ if (obs != InlineObservation::CALLEE_IS_NOINLINE)
818
799
{
819
800
JITDUMP (" \n INLINER: Marking %s as NOINLINE (observation %s)\n " , callee, InlGetObservationString (obs));
820
801
821
802
COMP_HANDLE comp = m_RootCompiler->info .compCompHnd ;
822
803
comp->setMethodAttribs (m_Callee, CORINFO_FLG_BAD_INLINEE);
823
804
}
824
- else if (suppress)
805
+ else
825
806
{
826
- JITDUMP (" \n INLINER: Not marking %s NOINLINE; %s (observation %s)\n " , callee,
827
- dynamicPgo ? " pgo active" : " already known" , InlGetObservationString (obs));
807
+ JITDUMP (" \n INLINER: Not marking %s NOINLINE because it's already marked as such\n " , callee);
828
808
}
829
809
}
830
810
0 commit comments