summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2014-03-07 21:52:38 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2014-03-07 21:52:38 +0000
commitadf1ea8227368d8ad25b21795edfceae6051a005 (patch)
tree4ef7e92ce12ef2720cae1f63c5be6727ba926675 /llvm/lib
parent4cadf292a505670c4e01ed3452d386cba4c4c641 (diff)
downloadbcm5719-llvm-adf1ea8227368d8ad25b21795edfceae6051a005.tar.gz
bcm5719-llvm-adf1ea8227368d8ad25b21795edfceae6051a005.zip
[C++11] Revert uses of lambdas with array_pod_sort.
Looks like GCC implements the lambda->function pointer conversion differently. llvm-svn: 203294
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Support/TargetRegistry.cpp11
-rw-r--r--llvm/lib/Transforms/IPO/GlobalOpt.cpp9
2 files changed, 11 insertions, 9 deletions
diff --git a/llvm/lib/Support/TargetRegistry.cpp b/llvm/lib/Support/TargetRegistry.cpp
index 6e0e223ba70..8d91a53c226 100644
--- a/llvm/lib/Support/TargetRegistry.cpp
+++ b/llvm/lib/Support/TargetRegistry.cpp
@@ -127,6 +127,11 @@ const Target *TargetRegistry::getClosestTargetForJIT(std::string &Error) {
return TheTarget;
}
+static int TargetArraySortFn(const std::pair<StringRef, const Target *> *LHS,
+ const std::pair<StringRef, const Target *> *RHS) {
+ return LHS->first.compare(RHS->first);
+}
+
void TargetRegistry::printRegisteredTargetsForVersion() {
std::vector<std::pair<StringRef, const Target*> > Targets;
size_t Width = 0;
@@ -136,11 +141,7 @@ void TargetRegistry::printRegisteredTargetsForVersion() {
Targets.push_back(std::make_pair(I->getName(), &*I));
Width = std::max(Width, Targets.back().first.size());
}
- array_pod_sort(Targets.begin(), Targets.end(),
- [](const std::pair<StringRef, const Target *> *LHS,
- const std::pair<StringRef, const Target *> *RHS) {
- return LHS->first.compare(RHS->first);
- });
+ array_pod_sort(Targets.begin(), Targets.end(), TargetArraySortFn);
raw_ostream &OS = outs();
OS << " Registered Targets:\n";
diff --git a/llvm/lib/Transforms/IPO/GlobalOpt.cpp b/llvm/lib/Transforms/IPO/GlobalOpt.cpp
index 1ba9ac17688..0f97160eb6a 100644
--- a/llvm/lib/Transforms/IPO/GlobalOpt.cpp
+++ b/llvm/lib/Transforms/IPO/GlobalOpt.cpp
@@ -2860,6 +2860,10 @@ bool GlobalOpt::OptimizeGlobalCtorsList(GlobalVariable *&GCL) {
return true;
}
+static int compareNames(Constant *const *A, Constant *const *B) {
+ return (*A)->getName().compare((*B)->getName());
+}
+
static void setUsedInitializer(GlobalVariable &V,
SmallPtrSet<GlobalValue *, 8> Init) {
if (Init.empty()) {
@@ -2878,10 +2882,7 @@ static void setUsedInitializer(GlobalVariable &V,
UsedArray.push_back(Cast);
}
// Sort to get deterministic order.
- array_pod_sort(UsedArray.begin(), UsedArray.end(),
- [](Constant *const *A, Constant *const *B) {
- return (*A)->getName().compare((*B)->getName());
- });
+ array_pod_sort(UsedArray.begin(), UsedArray.end(), compareNames);
ArrayType *ATy = ArrayType::get(Int8PtrTy, UsedArray.size());
Module *M = V.getParent();
OpenPOWER on IntegriCloud