From: Jakob Stoklund Olesen Date: Sun, 30 Jan 2011 20:38:12 +0000 (+0000) Subject: Respect the -tail-dup-size command line option even when optimizing for size. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=8352062e52eed6e50786fdb89f5e601fdcbe0d90;p=oota-llvm.git Respect the -tail-dup-size command line option even when optimizing for size. This is similar to the -unroll-threshold option. There should be no change in behavior when -tail-dup-size is not explicit on the llc command line. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124564 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/TailDuplication.cpp b/lib/CodeGen/TailDuplication.cpp index 15aed3436c7..83706deb3f7 100644 --- a/lib/CodeGen/TailDuplication.cpp +++ b/lib/CodeGen/TailDuplication.cpp @@ -459,7 +459,8 @@ TailDuplicatePass::TailDuplicate(MachineBasicBlock *TailBB, MachineFunction &MF, // duplicate only one, because one branch instruction can be eliminated to // compensate for the duplication. unsigned MaxDuplicateCount; - if (MF.getFunction()->hasFnAttr(Attribute::OptimizeForSize)) + if (TailDuplicateSize.getNumOccurrences() == 0 && + MF.getFunction()->hasFnAttr(Attribute::OptimizeForSize)) MaxDuplicateCount = 1; else MaxDuplicateCount = TailDuplicateSize;