summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Shaposhnikov <shal1t712@gmail.com>2017-07-04 05:11:30 +0000
committerAlexander Shaposhnikov <shal1t712@gmail.com>2017-07-04 05:11:30 +0000
commit680f0174871f111a8f63e1db564ab3a17237dbe3 (patch)
tree79a66ab8d872074ebbcd3828894872eef7ee5304
parent5b51816020a0daf35f8c24ca06ddffb24d1d493e (diff)
downloadbcm5719-llvm-680f0174871f111a8f63e1db564ab3a17237dbe3.tar.gz
bcm5719-llvm-680f0174871f111a8f63e1db564ab3a17237dbe3.zip
[tablegen] Avoid creating a temporary vector in getInstructionCase
Record::getValues returns ArrayRef which has a cast operator to std::vector, as a result a temporary vector is created if the type of the variable is const std::vector& that was suboptimal in this case. Differential revision: https://reviews.llvm.org/D34969 Test plan: make check-all llvm-svn: 307059
-rw-r--r--llvm/include/llvm/ProfileData/InstrProf.h5
1 files changed, 1 insertions, 4 deletions
diff --git a/llvm/include/llvm/ProfileData/InstrProf.h b/llvm/include/llvm/ProfileData/InstrProf.h
index a6b2850ccd2..234c2fbeb03 100644
--- a/llvm/include/llvm/ProfileData/InstrProf.h
+++ b/llvm/include/llvm/ProfileData/InstrProf.h
@@ -753,11 +753,8 @@ uint32_t InstrProfRecord::getNumValueKinds() const {
uint32_t InstrProfRecord::getNumValueData(uint32_t ValueKind) const {
uint32_t N = 0;
- const std::vector<InstrProfValueSiteRecord> &SiteRecords =
- getValueSitesForKind(ValueKind);
- for (auto &SR : SiteRecords) {
+ for (auto &SR : getValueSitesForKind(ValueKind))
N += SR.ValueData.size();
- }
return N;
}
OpenPOWER on IntegriCloud