• Home
  • Raw
  • Download

Lines Matching full:scope

39 // This scope makes that simple, and allows early returns in the decode logic.
81 RecordInstructionFeaturesScope scope(this); in LoadStoreHelper() local
87 scope.Record(CPUFeatures::kNEON); in LoadStoreHelper()
95 scope.RecordOneOrBothOf(CPUFeatures::kFP, CPUFeatures::kNEON); in LoadStoreHelper()
104 RecordInstructionFeaturesScope scope(this); in LoadStorePairHelper() local
108 scope.Record(CPUFeatures::kNEON); in LoadStorePairHelper()
114 scope.RecordOneOrBothOf(CPUFeatures::kFP, CPUFeatures::kNEON); in LoadStorePairHelper()
124 RecordInstructionFeaturesScope scope(this); in VisitAddSubExtended() local
129 RecordInstructionFeaturesScope scope(this); in VisitAddSubImmediate() local
134 RecordInstructionFeaturesScope scope(this); in VisitAddSubShifted() local
139 RecordInstructionFeaturesScope scope(this); in VisitAddSubWithCarry() local
144 RecordInstructionFeaturesScope scope(this); in VisitRotateRightIntoFlags() local
147 scope.Record(CPUFeatures::kFlagM); in VisitRotateRightIntoFlags()
153 RecordInstructionFeaturesScope scope(this); in VisitEvaluateIntoFlags() local
157 scope.Record(CPUFeatures::kFlagM); in VisitEvaluateIntoFlags()
163 RecordInstructionFeaturesScope scope(this); in VisitAtomicMemory() local
169 scope.Record(CPUFeatures::kRCpc); in VisitAtomicMemory()
173 scope.Record(CPUFeatures::kAtomics); in VisitAtomicMemory()
179 RecordInstructionFeaturesScope scope(this); in VisitBitfield() local
184 RecordInstructionFeaturesScope scope(this); in VisitCompareBranch() local
189 RecordInstructionFeaturesScope scope(this); in VisitConditionalBranch() local
195 RecordInstructionFeaturesScope scope(this); in VisitConditionalCompareImmediate() local
201 RecordInstructionFeaturesScope scope(this); in VisitConditionalCompareRegister() local
206 RecordInstructionFeaturesScope scope(this); in VisitConditionalSelect() local
211 RecordInstructionFeaturesScope scope(this); in VisitCrypto2RegSHA() local
216 RecordInstructionFeaturesScope scope(this); in VisitCrypto3RegSHA() local
221 RecordInstructionFeaturesScope scope(this); in VisitCryptoAES() local
226 RecordInstructionFeaturesScope scope(this); in VisitDataProcessing1Source() local
246 scope.Record(CPUFeatures::kPAuth); in VisitDataProcessing1Source()
255 RecordInstructionFeaturesScope scope(this); in VisitDataProcessing2Source() local
265 scope.Record(CPUFeatures::kCRC32); in VisitDataProcessing2Source()
268 scope.Record(CPUFeatures::kPAuth, CPUFeatures::kPAuthGeneric); in VisitDataProcessing2Source()
278 RecordInstructionFeaturesScope scope(this); in VisitLoadStoreRCpcUnscaledOffset() local
296 scope.Record(CPUFeatures::kRCpc, CPUFeatures::kRCpcImm); in VisitLoadStoreRCpcUnscaledOffset()
302 RecordInstructionFeaturesScope scope(this); in VisitLoadStorePAC() local
304 scope.Record(CPUFeatures::kPAuth); in VisitLoadStorePAC()
308 RecordInstructionFeaturesScope scope(this); in VisitDataProcessing3Source() local
313 RecordInstructionFeaturesScope scope(this); in VisitException() local
318 RecordInstructionFeaturesScope scope(this); in VisitExtract() local
323 RecordInstructionFeaturesScope scope(this); in VisitFPCompare() local
325 scope.Record(CPUFeatures::kFP); in VisitFPCompare()
331 scope.Record(CPUFeatures::kFPHalf); in VisitFPCompare()
340 RecordInstructionFeaturesScope scope(this); in VisitFPConditionalCompare() local
342 scope.Record(CPUFeatures::kFP); in VisitFPConditionalCompare()
346 scope.Record(CPUFeatures::kFPHalf); in VisitFPConditionalCompare()
355 RecordInstructionFeaturesScope scope(this); in VisitFPConditionalSelect() local
357 scope.Record(CPUFeatures::kFP); in VisitFPConditionalSelect()
359 scope.Record(CPUFeatures::kFPHalf); in VisitFPConditionalSelect()
365 RecordInstructionFeaturesScope scope(this); in VisitFPDataProcessing1Source() local
367 scope.Record(CPUFeatures::kFP); in VisitFPDataProcessing1Source()
380 scope.Record(CPUFeatures::kFPHalf); in VisitFPDataProcessing1Source()
390 scope.Record(CPUFeatures::kFrintToFixedSizedInt); in VisitFPDataProcessing1Source()
402 RecordInstructionFeaturesScope scope(this); in VisitFPDataProcessing2Source() local
404 scope.Record(CPUFeatures::kFP); in VisitFPDataProcessing2Source()
415 scope.Record(CPUFeatures::kFPHalf); in VisitFPDataProcessing2Source()
425 RecordInstructionFeaturesScope scope(this); in VisitFPDataProcessing3Source() local
427 scope.Record(CPUFeatures::kFP); in VisitFPDataProcessing3Source()
433 scope.Record(CPUFeatures::kFPHalf); in VisitFPDataProcessing3Source()
442 RecordInstructionFeaturesScope scope(this); in VisitFPFixedPointConvert() local
444 scope.Record(CPUFeatures::kFP); in VisitFPFixedPointConvert()
454 scope.Record(CPUFeatures::kFPHalf); in VisitFPFixedPointConvert()
463 RecordInstructionFeaturesScope scope(this); in VisitFPImmediate() local
465 scope.Record(CPUFeatures::kFP); in VisitFPImmediate()
467 scope.Record(CPUFeatures::kFPHalf); in VisitFPImmediate()
472 RecordInstructionFeaturesScope scope(this); in VisitFPIntegerConvert() local
474 scope.Record(CPUFeatures::kFP); in VisitFPIntegerConvert()
504 scope.Record(CPUFeatures::kFPHalf); in VisitFPIntegerConvert()
508 scope.Record(CPUFeatures::kNEON); in VisitFPIntegerConvert()
511 scope.Record(CPUFeatures::kJSCVT); in VisitFPIntegerConvert()
520 RecordInstructionFeaturesScope scope(this); in VisitLoadLiteral() local
524 scope.RecordOneOrBothOf(CPUFeatures::kFP, CPUFeatures::kNEON); in VisitLoadLiteral()
527 scope.Record(CPUFeatures::kNEON); in VisitLoadLiteral()
536 RecordInstructionFeaturesScope scope(this); in VisitLoadStoreExclusive() local
562 scope.Record(CPUFeatures::kAtomics); in VisitLoadStoreExclusive()
572 scope.Record(CPUFeatures::kLORegions); in VisitLoadStoreExclusive()
621 RecordInstructionFeaturesScope scope(this); in VisitLogicalImmediate() local
626 RecordInstructionFeaturesScope scope(this); in VisitLogicalShifted() local
631 RecordInstructionFeaturesScope scope(this); in VisitMoveWideImmediate() local
636 RecordInstructionFeaturesScope scope(this); in VisitNEON2RegMisc() local
638 scope.Record(CPUFeatures::kNEON); in VisitNEON2RegMisc()
672 scope.Record(CPUFeatures::kFP); in VisitNEON2RegMisc()
678 scope.Record(CPUFeatures::kFP, CPUFeatures::kFrintToFixedSizedInt); in VisitNEON2RegMisc()
687 RecordInstructionFeaturesScope scope(this); in VisitNEON2RegMiscFP16() local
689 scope.Record(CPUFeatures::kFP, CPUFeatures::kNEON, CPUFeatures::kNEONHalf); in VisitNEON2RegMiscFP16()
694 RecordInstructionFeaturesScope scope(this); in VisitNEON3Different() local
696 scope.Record(CPUFeatures::kNEON); in VisitNEON3Different()
701 RecordInstructionFeaturesScope scope(this); in VisitNEON3Same() local
703 scope.Record(CPUFeatures::kNEON); in VisitNEON3Same()
705 scope.Record(CPUFeatures::kFP); in VisitNEON3Same()
712 scope.Record(CPUFeatures::kFP, CPUFeatures::kNEONHalf, CPUFeatures::kFHM); in VisitNEON3Same()
721 RecordInstructionFeaturesScope scope(this); in VisitNEON3SameExtra() local
723 scope.Record(CPUFeatures::kNEON); in VisitNEON3SameExtra()
726 scope.Record(CPUFeatures::kFP, CPUFeatures::kFcma); in VisitNEON3SameExtra()
727 if (instr->GetNEONSize() == 1) scope.Record(CPUFeatures::kNEONHalf); in VisitNEON3SameExtra()
732 scope.Record(CPUFeatures::kDotProduct); in VisitNEON3SameExtra()
736 scope.Record(CPUFeatures::kRDM); in VisitNEON3SameExtra()
746 RecordInstructionFeaturesScope scope(this); in VisitNEON3SameFP16() local
748 scope.Record(CPUFeatures::kFP, CPUFeatures::kNEON, CPUFeatures::kNEONHalf); in VisitNEON3SameFP16()
753 RecordInstructionFeaturesScope scope(this); in VisitNEONAcrossLanes() local
755 scope.Record(CPUFeatures::kNEON); in VisitNEONAcrossLanes()
758 scope.Record(CPUFeatures::kFP, CPUFeatures::kNEONHalf); in VisitNEONAcrossLanes()
761 scope.Record(CPUFeatures::kFP); in VisitNEONAcrossLanes()
766 RecordInstructionFeaturesScope scope(this); in VisitNEONByIndexedElement() local
768 scope.Record(CPUFeatures::kNEON); in VisitNEONByIndexedElement()
772 scope.Record(CPUFeatures::kDotProduct); in VisitNEONByIndexedElement()
776 scope.Record(CPUFeatures::kRDM); in VisitNEONByIndexedElement()
787 scope.Record(CPUFeatures::kFP, CPUFeatures::kNEONHalf, CPUFeatures::kFHM); in VisitNEONByIndexedElement()
798 scope.Record(CPUFeatures::kNEONHalf); in VisitNEONByIndexedElement()
804 scope.Record(CPUFeatures::kFP); in VisitNEONByIndexedElement()
809 scope.Record(CPUFeatures::kFP, CPUFeatures::kFcma); in VisitNEONByIndexedElement()
810 if (instr->GetNEONSize() == 1) scope.Record(CPUFeatures::kNEONHalf); in VisitNEONByIndexedElement()
819 RecordInstructionFeaturesScope scope(this); in VisitNEONCopy() local
821 scope.Record(CPUFeatures::kNEON); in VisitNEONCopy()
826 RecordInstructionFeaturesScope scope(this); in VisitNEONExtract() local
828 scope.Record(CPUFeatures::kNEON); in VisitNEONExtract()
834 RecordInstructionFeaturesScope scope(this); in VisitNEONLoadStoreMultiStruct() local
836 scope.Record(CPUFeatures::kNEON); in VisitNEONLoadStoreMultiStruct()
842 RecordInstructionFeaturesScope scope(this); in VisitNEONLoadStoreMultiStructPostIndex() local
844 scope.Record(CPUFeatures::kNEON); in VisitNEONLoadStoreMultiStructPostIndex()
850 RecordInstructionFeaturesScope scope(this); in VisitNEONLoadStoreSingleStruct() local
852 scope.Record(CPUFeatures::kNEON); in VisitNEONLoadStoreSingleStruct()
858 RecordInstructionFeaturesScope scope(this); in VisitNEONLoadStoreSingleStructPostIndex() local
860 scope.Record(CPUFeatures::kNEON); in VisitNEONLoadStoreSingleStructPostIndex()
865 RecordInstructionFeaturesScope scope(this); in VisitNEONModifiedImmediate() local
867 scope.Record(CPUFeatures::kNEON); in VisitNEONModifiedImmediate()
870 scope.Record(CPUFeatures::kFP); in VisitNEONModifiedImmediate()
871 if (instr->ExtractBit(11)) scope.Record(CPUFeatures::kNEONHalf); in VisitNEONModifiedImmediate()
876 RecordInstructionFeaturesScope scope(this); in VisitNEONPerm() local
878 scope.Record(CPUFeatures::kNEON); in VisitNEONPerm()
883 RecordInstructionFeaturesScope scope(this); in VisitNEONScalar2RegMisc() local
885 scope.Record(CPUFeatures::kNEON); in VisitNEONScalar2RegMisc()
908 scope.Record(CPUFeatures::kFP); in VisitNEONScalar2RegMisc()
917 RecordInstructionFeaturesScope scope(this); in VisitNEONScalar2RegMiscFP16() local
919 scope.Record(CPUFeatures::kFP, CPUFeatures::kNEON, CPUFeatures::kNEONHalf); in VisitNEONScalar2RegMiscFP16()
924 RecordInstructionFeaturesScope scope(this); in VisitNEONScalar3Diff() local
926 scope.Record(CPUFeatures::kNEON); in VisitNEONScalar3Diff()
931 RecordInstructionFeaturesScope scope(this); in VisitNEONScalar3Same() local
933 scope.Record(CPUFeatures::kNEON); in VisitNEONScalar3Same()
935 scope.Record(CPUFeatures::kFP); in VisitNEONScalar3Same()
940 RecordInstructionFeaturesScope scope(this); in VisitNEONScalar3SameExtra() local
942 scope.Record(CPUFeatures::kNEON, CPUFeatures::kRDM); in VisitNEONScalar3SameExtra()
947 RecordInstructionFeaturesScope scope(this); in VisitNEONScalar3SameFP16() local
949 scope.Record(CPUFeatures::kFP, CPUFeatures::kNEON, CPUFeatures::kNEONHalf); in VisitNEONScalar3SameFP16()
955 RecordInstructionFeaturesScope scope(this); in VisitNEONScalarByIndexedElement() local
957 scope.Record(CPUFeatures::kNEON); in VisitNEONScalarByIndexedElement()
961 scope.Record(CPUFeatures::kRDM); in VisitNEONScalarByIndexedElement()
969 scope.Record(CPUFeatures::kNEONHalf); in VisitNEONScalarByIndexedElement()
975 scope.Record(CPUFeatures::kFP); in VisitNEONScalarByIndexedElement()
984 RecordInstructionFeaturesScope scope(this); in VisitNEONScalarCopy() local
986 scope.Record(CPUFeatures::kNEON); in VisitNEONScalarCopy()
991 RecordInstructionFeaturesScope scope(this); in VisitNEONScalarPairwise() local
993 scope.Record(CPUFeatures::kNEON); in VisitNEONScalarPairwise()
1000 scope.Record(CPUFeatures::kNEONHalf); in VisitNEONScalarPairwise()
1007 scope.Record(CPUFeatures::kFP); in VisitNEONScalarPairwise()
1017 RecordInstructionFeaturesScope scope(this); in VisitNEONScalarShiftImmediate() local
1019 scope.Record(CPUFeatures::kNEON); in VisitNEONScalarShiftImmediate()
1025 scope.Record(CPUFeatures::kFP); in VisitNEONScalarShiftImmediate()
1028 scope.Record(CPUFeatures::kNEONHalf); in VisitNEONScalarShiftImmediate()
1038 RecordInstructionFeaturesScope scope(this); in VisitNEONShiftImmediate() local
1040 scope.Record(CPUFeatures::kNEON); in VisitNEONShiftImmediate()
1046 scope.Record(CPUFeatures::kFP); in VisitNEONShiftImmediate()
1049 scope.Record(CPUFeatures::kNEONHalf); in VisitNEONShiftImmediate()
1059 RecordInstructionFeaturesScope scope(this); in VisitNEONTable() local
1061 scope.Record(CPUFeatures::kNEON); in VisitNEONTable()
1066 RecordInstructionFeaturesScope scope(this); in VisitPCRelAddressing() local
1221 RecordInstructionFeaturesScope scope(this); \
1222 scope.Record(CPUFeatures::kSVE); \
1230 RecordInstructionFeaturesScope scope(this); in VIXL_SIMPLE_SVE_VISITOR_LIST() local
1269 if (available_.Has(required)) scope.Record(required); in VIXL_SIMPLE_SVE_VISITOR_LIST()
1274 scope.Record(CPUFeatures::kDCPoP); in VIXL_SIMPLE_SVE_VISITOR_LIST()
1277 scope.Record(CPUFeatures::kDCCVADP); in VIXL_SIMPLE_SVE_VISITOR_LIST()
1289 scope.Record(CPUFeatures::kFlagM); in VIXL_SIMPLE_SVE_VISITOR_LIST()
1293 scope.Record(CPUFeatures::kAXFlag); in VIXL_SIMPLE_SVE_VISITOR_LIST()
1301 scope.Record(CPUFeatures::kRNG); in VIXL_SIMPLE_SVE_VISITOR_LIST()
1309 RecordInstructionFeaturesScope scope(this); in VisitTestBranch() local
1314 RecordInstructionFeaturesScope scope(this); in VisitUnallocated() local
1319 RecordInstructionFeaturesScope scope(this); in VisitUnconditionalBranch() local
1325 RecordInstructionFeaturesScope scope(this); in VisitUnconditionalBranchToRegister() local
1337 scope.Record(CPUFeatures::kPAuth); in VisitUnconditionalBranchToRegister()
1346 RecordInstructionFeaturesScope scope(this); in VisitReserved() local
1351 RecordInstructionFeaturesScope scope(this); in VisitUnimplemented() local