forked from OSchip/llvm-project
[PM] Setup TargetLibraryInfo correctly for the new pass manager.
Without this, -fno-builtin and friends doesn't work. Added the obvious RUN lines to the test for -fno-builtin and they pass now. llvm-svn: 308967
This commit is contained in:
parent
2f21017be2
commit
9fdd5fa5e0
|
@ -871,6 +871,14 @@ void EmitAssemblyHelper::EmitAssemblyWithNewPassManager(
|
|||
// Register the AA manager first so that our version is the one used.
|
||||
FAM.registerPass([&] { return PB.buildDefaultAAPipeline(); });
|
||||
|
||||
// Register the target library analysis directly and give it a customized
|
||||
// preset TLI.
|
||||
Triple TargetTriple(TheModule->getTargetTriple());
|
||||
std::unique_ptr<TargetLibraryInfoImpl> TLII(
|
||||
createTLII(TargetTriple, CodeGenOpts));
|
||||
FAM.registerPass([&] { return TargetLibraryAnalysis(*TLII); });
|
||||
MAM.registerPass([&] { return TargetLibraryAnalysis(*TLII); });
|
||||
|
||||
// Register all the basic analyses with the managers.
|
||||
PB.registerModuleAnalyses(MAM);
|
||||
PB.registerCGSCCAnalyses(CGAM);
|
||||
|
|
|
@ -4,6 +4,10 @@
|
|||
// RUN: %clang_cc1 -triple x86_64-linux-gnu -fno-builtin -O1 -S -o - %s | FileCheck -check-prefix=NOSTRCPY -check-prefix=NOMEMSET %s
|
||||
// RUN: %clang_cc1 -triple x86_64-linux-gnu -fno-builtin-memset -O1 -S -o - %s | FileCheck -check-prefix=STRCPY -check-prefix=NOMEMSET %s
|
||||
|
||||
// RUN: %clang_cc1 -triple x86_64-linux-gnu -O1 -fexperimental-new-pass-manager -S -o - %s | FileCheck -check-prefix=STRCPY -check-prefix=MEMSET %s
|
||||
// RUN: %clang_cc1 -triple x86_64-linux-gnu -fno-builtin -O1 -fexperimental-new-pass-manager -S -o - %s | FileCheck -check-prefix=NOSTRCPY -check-prefix=NOMEMSET %s
|
||||
// RUN: %clang_cc1 -triple x86_64-linux-gnu -fno-builtin-memset -O1 -fexperimental-new-pass-manager -S -o - %s | FileCheck -check-prefix=STRCPY -check-prefix=NOMEMSET %s
|
||||
|
||||
void PR13497() {
|
||||
char content[2];
|
||||
// make sure we don't optimize this call to strcpy()
|
||||
|
|
Loading…
Reference in New Issue