aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/CodeGen/AsmPrinter.h
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2008-02-28 00:43:03 +0000
committerEvan Cheng <evan.cheng@apple.com>2008-02-28 00:43:03 +0000
commit45c1edb4f781571f11fefb07a46a2c0f08523650 (patch)
treec0823b1738e1ce2f7c6c219547f9f116d53074bf /include/llvm/CodeGen/AsmPrinter.h
parent1aa1f2c0d7db4217f667bb230e091a14c0537099 (diff)
downloadexternal_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.h12
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;