aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/MC/MCAsmLayout.h
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2010-11-23 05:49:35 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2010-11-23 05:49:35 +0000
commit0e11dfc4a6f7e3a3d3bc0365e1da43bc2fa0aac2 (patch)
treedf4f6520b3356bdd23640994f46ee9626ea77e9d /include/llvm/MC/MCAsmLayout.h
parentcafe0b4e1fec183f26e0ae374c09bad77388820a (diff)
downloadexternal_llvm-0e11dfc4a6f7e3a3d3bc0365e1da43bc2fa0aac2.zip
external_llvm-0e11dfc4a6f7e3a3d3bc0365e1da43bc2fa0aac2.tar.gz
external_llvm-0e11dfc4a6f7e3a3d3bc0365e1da43bc2fa0aac2.tar.bz2
Reuse data fragments while lowering. Patch by David Meyer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119999 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/MC/MCAsmLayout.h')
-rw-r--r--include/llvm/MC/MCAsmLayout.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/include/llvm/MC/MCAsmLayout.h b/include/llvm/MC/MCAsmLayout.h
index b9565ba..6feacf5 100644
--- a/include/llvm/MC/MCAsmLayout.h
+++ b/include/llvm/MC/MCAsmLayout.h
@@ -59,8 +59,15 @@ public:
/// the delta from the old size.
void UpdateForSlide(MCFragment *F, int SlideAmount);
- /// \brief Update the layout because a fragment has been replaced.
- void FragmentReplaced(MCFragment *Src, MCFragment *Dst);
+ /// \brief Update the layout, replacing Src with Dst. The contents
+ /// of Src and Dst are not modified, and must be copied by the caller.
+ /// Src will be removed from the layout, but not deleted.
+ void ReplaceFragment(MCFragment *Src, MCFragment *Dst);
+
+ /// \brief Update the layout to coalesce Src into Dst. The contents
+ /// of Src and Dst are not modified, and must be coalesced by the caller.
+ /// Src will be removed from the layout, but not deleted.
+ void CoalesceFragments(MCFragment *Src, MCFragment *Dst);
/// \brief Perform a full layout.
void LayoutFile();