diff options
author | Evan Cheng <evan.cheng@apple.com> | 2008-02-28 00:43:03 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2008-02-28 00:43:03 +0000 |
commit | 45c1edb4f781571f11fefb07a46a2c0f08523650 (patch) | |
tree | c0823b1738e1ce2f7c6c219547f9f116d53074bf /include/llvm/CodeGen/AsmPrinter.h | |
parent | 1aa1f2c0d7db4217f667bb230e091a14c0537099 (diff) | |
download | external_llvm-45c1edb4f781571f11fefb07a46a2c0f08523650.zip external_llvm-45c1edb4f781571f11fefb07a46a2c0f08523650.tar.gz external_llvm-45c1edb4f781571f11fefb07a46a2c0f08523650.tar.bz2 |
Add a quick and dirty "loop aligner pass". x86 uses it to align its loops to 16-byte boundaries.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47703 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/CodeGen/AsmPrinter.h')
-rw-r--r-- | include/llvm/CodeGen/AsmPrinter.h | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/include/llvm/CodeGen/AsmPrinter.h b/include/llvm/CodeGen/AsmPrinter.h index 6607afe..462c401 100644 --- a/include/llvm/CodeGen/AsmPrinter.h +++ b/include/llvm/CodeGen/AsmPrinter.h @@ -78,6 +78,10 @@ namespace llvm { /// CurrentSection - The current section we are emitting to. This is /// controlled and used by the SwitchSection method. std::string CurrentSection; + + /// IsInTextSection - True if the current section we are emitting to is a + /// text section. + bool IsInTextSection; protected: AsmPrinter(std::ostream &o, TargetMachine &TM, const TargetAsmInfo *T); @@ -269,9 +273,7 @@ namespace llvm { /// an explicit alignment requested, it will unconditionally override the /// alignment request. However, if ForcedAlignBits is specified, this value /// has final say: the ultimate alignment will be the max of ForcedAlignBits - /// and the alignment computed with NumBits and the global. If UseFillExpr - /// is true, it also emits an optional second value FillValue which the - /// assembler uses to fill gaps to match alignment. + /// and the alignment computed with NumBits and the global /// /// The algorithm is: /// Align = NumBits; @@ -279,8 +281,7 @@ namespace llvm { /// Align = std::max(Align, ForcedAlignBits); /// void EmitAlignment(unsigned NumBits, const GlobalValue *GV = 0, - unsigned ForcedAlignBits = 0, bool UseFillExpr = false, - unsigned FillValue = 0) const; + unsigned ForcedAlignBits = 0) const; /// printLabel - This method prints a local label used by debug and /// exception handling tables. @@ -317,6 +318,7 @@ namespace llvm { /// printBasicBlockLabel - This method prints the label for the specified /// MachineBasicBlock virtual void printBasicBlockLabel(const MachineBasicBlock *MBB, + bool printAlign = false, bool printColon = false, bool printComment = true) const; |