@@ -85,11 +85,6 @@ macro_rules! is_anon_attr {
8585 ( $attr: ident) => ( false ) ;
8686}
8787
88- macro_rules! is_input_attr {
89- ( input) => ( true ) ;
90- ( $attr: ident) => ( false ) ;
91- }
92-
9388macro_rules! is_eval_always_attr {
9489 ( eval_always) => ( true ) ;
9590 ( $attr: ident) => ( false ) ;
@@ -99,10 +94,6 @@ macro_rules! contains_anon_attr {
9994 ( $( $attr: ident) ,* ) => ( { $( is_anon_attr!( $attr) | ) * false } ) ;
10095}
10196
102- macro_rules! contains_input_attr {
103- ( $( $attr: ident) ,* ) => ( { $( is_input_attr!( $attr) | ) * false } ) ;
104- }
105-
10697macro_rules! contains_eval_always_attr {
10798 ( $( $attr: ident) ,* ) => ( { $( is_eval_always_attr!( $attr) | ) * false } ) ;
10899}
@@ -151,7 +142,7 @@ macro_rules! define_dep_nodes {
151142 }
152143 }
153144
154- // FIXME: Make `is_anon`, `is_input`, ` is_eval_always` and `has_params` properties
145+ // FIXME: Make `is_anon`, `is_eval_always` and `has_params` properties
155146 // of queries
156147 #[ inline( always) ]
157148 pub fn is_anon( & self ) -> bool {
@@ -162,15 +153,6 @@ macro_rules! define_dep_nodes {
162153 }
163154 }
164155
165- #[ inline( always) ]
166- pub fn is_input( & self ) -> bool {
167- match * self {
168- $(
169- DepKind :: $variant => { contains_input_attr!( $( $attr) ,* ) }
170- ) *
171- }
172- }
173-
174156 #[ inline( always) ]
175157 pub fn is_eval_always( & self ) -> bool {
176158 match * self {
@@ -438,17 +420,17 @@ define_dep_nodes!( <'tcx>
438420 // suitable wrapper, you can use `tcx.dep_graph.ignore()` to gain
439421 // access to the krate, but you must remember to add suitable
440422 // edges yourself for the individual items that you read.
441- [ input ] Krate ,
423+ [ eval_always ] Krate ,
442424
443425 // Represents the body of a function or method. The def-id is that of the
444426 // function/method.
445- [ input ] HirBody ( DefId ) ,
427+ [ eval_always ] HirBody ( DefId ) ,
446428
447429 // Represents the HIR node with the given node-id
448- [ input ] Hir ( DefId ) ,
430+ [ eval_always ] Hir ( DefId ) ,
449431
450432 // Represents metadata from an extern crate.
451- [ input ] CrateMetadata ( CrateNum ) ,
433+ [ eval_always ] CrateMetadata ( CrateNum ) ,
452434
453435 // Represents different phases in the compiler.
454436 [ ] RegionScopeTree ( DefId ) ,
@@ -458,6 +440,7 @@ define_dep_nodes!( <'tcx>
458440 [ eval_always] PrivacyAccessLevels ( CrateNum ) ,
459441 [ eval_always] CheckPrivateInPublic ( CrateNum ) ,
460442 [ eval_always] Analysis ( CrateNum ) ,
443+ [ eval_always] HirMap ( CrateNum ) ,
461444
462445 // Represents the MIR for a fn; also used as the task node for
463446 // things read/modify that MIR.
@@ -486,7 +469,7 @@ define_dep_nodes!( <'tcx>
486469
487470 [ ] Reachability ,
488471 [ ] MirKeys ,
489- [ eval_always ] CrateVariances ,
472+ [ ] CrateVariances ,
490473
491474 // Nodes representing bits of computed IR in the tcx. Each shared
492475 // table in the tcx (or elsewhere) maps to one of these
@@ -542,7 +525,7 @@ define_dep_nodes!( <'tcx>
542525 // The set of impls for a given trait.
543526 [ ] TraitImpls ( DefId ) ,
544527
545- [ input ] AllLocalTraitImpls ,
528+ [ eval_always ] AllLocalTraitImpls ,
546529
547530 [ anon] TraitSelect ,
548531
@@ -555,7 +538,7 @@ define_dep_nodes!( <'tcx>
555538 // to make type debuginfo to be source location independent. Declaring
556539 // DefSpan an input makes sure that changes to these are always detected
557540 // regardless of HIR hashing.
558- [ input ] DefSpan ( DefId ) ,
541+ [ eval_always ] DefSpan ( DefId ) ,
559542 [ ] LookupStability ( DefId ) ,
560543 [ ] LookupDeprecationEntry ( DefId ) ,
561544 [ ] ConstIsRvaluePromotableToStatic ( DefId ) ,
@@ -574,11 +557,11 @@ define_dep_nodes!( <'tcx>
574557 [ ] IsCompilerBuiltins ( CrateNum ) ,
575558 [ ] HasGlobalAllocator ( CrateNum ) ,
576559 [ ] HasPanicHandler ( CrateNum ) ,
577- [ input ] ExternCrate ( DefId ) ,
560+ [ eval_always ] ExternCrate ( DefId ) ,
578561 [ eval_always] LintLevels ,
579562 [ ] Specializes { impl1: DefId , impl2: DefId } ,
580- [ input ] InScopeTraits ( DefIndex ) ,
581- [ input ] ModuleExports ( DefId ) ,
563+ [ eval_always ] InScopeTraits ( DefIndex ) ,
564+ [ eval_always ] ModuleExports ( DefId ) ,
582565 [ ] IsSanitizerRuntime ( CrateNum ) ,
583566 [ ] IsProfilerRuntime ( CrateNum ) ,
584567 [ ] GetPanicStrategy ( CrateNum ) ,
@@ -592,10 +575,10 @@ define_dep_nodes!( <'tcx>
592575 [ ] EntryFn ( CrateNum ) ,
593576 [ ] PluginRegistrarFn ( CrateNum ) ,
594577 [ ] ProcMacroDeclsStatic ( CrateNum ) ,
595- [ input ] CrateDisambiguator ( CrateNum ) ,
596- [ input ] CrateHash ( CrateNum ) ,
597- [ input ] OriginalCrateName ( CrateNum ) ,
598- [ input ] ExtraFileName ( CrateNum ) ,
578+ [ eval_always ] CrateDisambiguator ( CrateNum ) ,
579+ [ eval_always ] CrateHash ( CrateNum ) ,
580+ [ eval_always ] OriginalCrateName ( CrateNum ) ,
581+ [ eval_always ] ExtraFileName ( CrateNum ) ,
599582
600583 [ ] ImplementationsOfTrait { krate: CrateNum , trait_id: DefId } ,
601584 [ ] AllTraitImplementations ( CrateNum ) ,
@@ -604,16 +587,16 @@ define_dep_nodes!( <'tcx>
604587 [ ] IsDllimportForeignItem ( DefId ) ,
605588 [ ] IsStaticallyIncludedForeignItem ( DefId ) ,
606589 [ ] NativeLibraryKind ( DefId ) ,
607- [ input ] LinkArgs ,
590+ [ eval_always ] LinkArgs ,
608591
609592 [ ] ResolveLifetimes ( CrateNum ) ,
610593 [ ] NamedRegion ( DefIndex ) ,
611594 [ ] IsLateBound ( DefIndex ) ,
612595 [ ] ObjectLifetimeDefaults ( DefIndex ) ,
613596
614597 [ ] Visibility ( DefId ) ,
615- [ input ] DepKind ( CrateNum ) ,
616- [ input ] CrateName ( CrateNum ) ,
598+ [ eval_always ] DepKind ( CrateNum ) ,
599+ [ eval_always ] CrateName ( CrateNum ) ,
617600 [ ] ItemChildren ( DefId ) ,
618601 [ ] ExternModStmtCnum ( DefId ) ,
619602 [ eval_always] GetLibFeatures ,
@@ -622,9 +605,9 @@ define_dep_nodes!( <'tcx>
622605 [ ] DefinedLangItems ( CrateNum ) ,
623606 [ ] MissingLangItems ( CrateNum ) ,
624607 [ ] VisibleParentMap ,
625- [ input ] MissingExternCrateItem ( CrateNum ) ,
626- [ input ] UsedCrateSource ( CrateNum ) ,
627- [ input ] PostorderCnums ,
608+ [ eval_always ] MissingExternCrateItem ( CrateNum ) ,
609+ [ eval_always ] UsedCrateSource ( CrateNum ) ,
610+ [ eval_always ] PostorderCnums ,
628611
629612 // These queries are not expected to have inputs -- as a result, they
630613 // are not good candidates for "replay" because they are essentially
@@ -634,20 +617,20 @@ define_dep_nodes!( <'tcx>
634617 // may save a bit of time.
635618 [ anon] EraseRegionsTy { ty: Ty <' tcx> } ,
636619
637- [ input ] Freevars ( DefId ) ,
638- [ input ] MaybeUnusedTraitImport ( DefId ) ,
639- [ input ] MaybeUnusedExternCrates ,
640- [ input ] NamesImportedByGlobUse ( DefId ) ,
620+ [ eval_always ] Freevars ( DefId ) ,
621+ [ eval_always ] MaybeUnusedTraitImport ( DefId ) ,
622+ [ eval_always ] MaybeUnusedExternCrates ,
623+ [ eval_always ] NamesImportedByGlobUse ( DefId ) ,
641624 [ eval_always] StabilityIndex ,
642625 [ eval_always] AllTraits ,
643- [ input ] AllCrateNums ,
626+ [ eval_always ] AllCrateNums ,
644627 [ ] ExportedSymbols ( CrateNum ) ,
645628 [ eval_always] CollectAndPartitionMonoItems ,
646629 [ ] IsCodegenedItem ( DefId ) ,
647630 [ ] CodegenUnit ( InternedString ) ,
648631 [ ] BackendOptimizationLevel ( CrateNum ) ,
649632 [ ] CompileCodegenUnit ( InternedString ) ,
650- [ input ] OutputFilenames ,
633+ [ eval_always ] OutputFilenames ,
651634 [ ] NormalizeProjectionTy ( CanonicalProjectionGoal <' tcx>) ,
652635 [ ] NormalizeTyAfterErasingRegions ( ParamEnvAnd <' tcx, Ty <' tcx>>) ,
653636 [ ] ImpliedOutlivesBounds ( CanonicalTyGoal <' tcx>) ,
@@ -666,11 +649,11 @@ define_dep_nodes!( <'tcx>
666649 [ ] SubstituteNormalizeAndTestPredicates { key: ( DefId , SubstsRef <' tcx>) } ,
667650 [ ] MethodAutoderefSteps ( CanonicalTyGoal <' tcx>) ,
668651
669- [ input ] TargetFeaturesWhitelist ,
652+ [ eval_always ] TargetFeaturesWhitelist ,
670653
671654 [ ] InstanceDefSizeEstimate { instance_def: InstanceDef <' tcx> } ,
672655
673- [ input ] Features ,
656+ [ eval_always ] Features ,
674657
675658 [ ] ProgramClausesFor ( DefId ) ,
676659 [ ] ProgramClausesForEnv ( traits:: Environment <' tcx>) ,
0 commit comments