Auto merge of #38027 - rkruppe:llvm-printpasses-fwdcompat, r=alexcrichton

[LLVM 4.0] LLVMRustPrintPasses

Adapt `LLVMRustPrintPasses` to LLVM 4.0 preferring `StringRef` over `char *`

cc #37609
This commit is contained in:
bors
2016-11-27 13:51:40 -06:00
committed by GitHub

View File

@@ -529,10 +529,17 @@ LLVMRustPrintPasses() {
LLVMInitializePasses(); LLVMInitializePasses();
struct MyListener : PassRegistrationListener { struct MyListener : PassRegistrationListener {
void passEnumerate(const PassInfo *info) { void passEnumerate(const PassInfo *info) {
#if LLVM_VERSION_GE(4, 0)
if (!info->getPassArgument().empty()) {
printf("%15s - %s\n", info->getPassArgument().data(),
info->getPassName().data());
}
#else
if (info->getPassArgument() && *info->getPassArgument()) { if (info->getPassArgument() && *info->getPassArgument()) {
printf("%15s - %s\n", info->getPassArgument(), printf("%15s - %s\n", info->getPassArgument(),
info->getPassName()); info->getPassName());
} }
#endif
} }
} listener; } listener;