6948897e478cbd66626159776a8017b3c18579b9 |
|
01-Jul-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master LLVM for rebase to r239765 Bug: 20140355: This rebase pulls the upstream fix for the spurious warnings mentioned in the bug. Change-Id: I7fd24253c50f4d48d900875dcf43ce3f1721a3da
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
0c7f116bb6950ef819323d855415b2f2b0aad987 |
|
06-May-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master LLVM for rebase to r235153 Change-Id: I9bf53792f9fc30570e81a8d80d296c681d005ea7
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
4c5e43da7792f75567b693105cc53e3f1992ad98 |
|
08-Apr-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master llvm for rebase to r233350 Change-Id: I07d935f8793ee8ec6b7da003f6483046594bca49
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
dce4a407a24b04eebc6a376f8e62b41aaa7b071f |
|
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update LLVM for 3.5 rebase (r209712). Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
f918d7fd7393049bc87bc03fda2d2cd3cec1dacb |
|
05-Feb-2013 |
Derek Schuff <dschuff@google.com> |
[MC] Bundle alignment: Invalidate relaxed fragments Currently, when a fragment is relaxed, its size is modified, but its offset is not (it gets laid out as a side effect of checking whether it needs relaxation), then all subsequent fragments are invalidated because their offsets need to change. When bundling is enabled, relaxed fragments need to get laid out again, because the increase in size may push it over a bundle boundary. So instead of only invalidating subsequent fragments, also invalidate the fragment that gets relaxed, which causes it to get laid out again. This patch also fixes some trailing whitespace and fixes the bundling-related debug output of MCFragments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174401 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
4766ef41b31e4f97bce1179c3b0398303bf65356 |
|
20-Dec-2012 |
Eli Bendersky <eliben@google.com> |
Aligned bundling support. Following the discussion here: http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-December/056754.html The proposal and implementation are fully documented here: https://sites.google.com/a/chromium.org/dev/nativeclient/pnacl/aligned-bundling-support-in-llvm Tests will follow shortly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170718 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
d52a2c0a31a49e1a8fa16f6b975d01b1e934a49f |
|
12-Dec-2012 |
Eli Bendersky <eliben@google.com> |
Make naming consistent, add comments and sanity asserts git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170007 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
f43e3fdb4ffddff6f71b5597c813c43e1e206564 |
|
10-Dec-2012 |
Eli Bendersky <eliben@google.com> |
Cleanup formatting, comments and naming. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169762 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
066b5d8403483bf3a8bb033b690da318fbc68e79 |
|
14-Nov-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Make headers standalone. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144537 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
7a2bdde0a0eebcd2125055e0eacaca040f0b766c |
|
15-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
Fix a ton of comment typos found by codespell. Patch by Luis Felipe Strano Moraes! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129558 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
f249e5d5d71d50323e7a60af1ee555de14378515 |
|
17-Dec-2010 |
Daniel Dunbar <daniel@zuster.org> |
Fix 80-col viola. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122010 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
2bf6afc277edb32b1d940def5b3eb0e0d32a22b9 |
|
15-Dec-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Relax alignment fragments. With this we don't need the EffectiveSize field anymore. Without that field LayoutFragment only updates offsets and we don't need to invalidate the current fragment when it is relaxed (only the ones following it). This is also a very small improvement in the accuracy of the layout info as we now use the after relaxation size immediately. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121857 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
4f4363a490721fe6e4f275193e783f77fa631ef2 |
|
08-Dec-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Layout each section independently. With the testcase in PR8711: before: 4 assembler - Number of assembler layout and relaxation steps 78563 assembler - Number of emitted assembler fragments 8693904 assembler - Number of emitted object file bytes 271223 assembler - Number of evaluated fixups 330771677 assembler - Number of fragment layouts 5958 assembler - Number of relaxed instructions 2508361 mcexpr - Number of MCExpr evaluations real 0m26.123s user 0m25.694s sys 0m0.388s after: 4 assembler - Number of assembler layout and relaxation steps 78563 assembler - Number of emitted assembler fragments 8693904 assembler - Number of emitted object file bytes 271223 assembler - Number of evaluated fixups 231507 assembler - Number of fragment layouts 5958 assembler - Number of relaxed instructions 2508361 mcexpr - Number of MCExpr evaluations real 0m2.500s user 0m2.113s sys 0m0.273s And yes, the outputs are identical :-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121207 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
85f2ecc697a8ca6c8cf08093054cbbb9d2060ccf |
|
07-Dec-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Sorry for such a large commit. The summary is that only MachO cares about the actuall addresses in a .o file, so it is better to let the MachO writer compute it. This is good for two reasons. First, areas that shouldn't care about addresses now don't have access to it. Second, the layout of each section is independent. I should use this in a subsequent commit to speed it up. Most of the patch is just removing the section address computation. The two interesting parts are the change on how we handle padding in the end of sections and how MachO can get the address of a-b when a and b are in different sections. Since now the expression evaluation normally doesn't know the section address, it will think that a-b needs relocation and let the MachO writer know. Once it has computed the section addresses, it calls back the expression evaluation with the section addresses to resolve these expressions. The remaining problem is the handling of padding. Currently it will create a special alignment fragment at the end. Since that fragment doesn't update the alignment of the section, it needs the real address to be computed. Since now the layout will not compute a-b with a and b in different sections, the only effect that the special alignment fragment has is update the address size of the section. This can also be done by the MachO writer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121076 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
179821ac1f282ef6f8d24d5ea346028aee8ba4c7 |
|
06-Dec-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove the instruction fragment to data fragment lowering since it was causing freed data to be read. I will open a bug to track it being reenabled. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121028 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
ffd902bfb743f0564c8f7689c49403074b6f694d |
|
06-Dec-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add a getSymbolOffset method and use it in the ELF writer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120977 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
a9d4281cc0557ef679b7917e0741ddb01651dab1 |
|
23-Nov-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Invalidate the layout on any relaxation, not just Instructions. Bug found by David Meyer. While here, remove unused argument and rename UpdateForSlide to Invalidate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120009 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
0e11dfc4a6f7e3a3d3bc0365e1da43bc2fa0aac2 |
|
23-Nov-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
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
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
47b3ec4daa12019b98468e8f646501ec285bbb59 |
|
14-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Switch to completely lazy layout. - The eliminates the last major algorithmic problem with MC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103754 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
9005d45a990ef46f06800bd6bd6a7d1298a33645 |
|
14-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Extend MCAsmLayout to explicitly track which fragments have been layed out, and enforce several invariants to LayoutFragment to ensure we only do layout in a sensible order. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103753 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
afc6acdab7ba3544d76329ab461f14a93cee67a2 |
|
14-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Change LayoutSection() to only do the section initializiation. Also, elimminate MCAsmLayout::set*, which are no longer needed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103750 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
b69fc044db8c193348b6611f46432bb21b3cbe90 |
|
13-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Move Layout{Fragment,Section} into MCAsmLayout, and add LayoutFile(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103738 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
aa0d350fe54b0bf13947cdb08d8e76e4ec233d6f |
|
13-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Add MCAsmLayout::FragmentReplaced() helper function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103709 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
2661f11e4602ad017fa155f6fdcee0a4f2d1ae86 |
|
13-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Eliminate MCSectionData::{,Address,File}Size, which can now be computed by utility functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
b5844ff1c44f0427bcf132eaece945da411e650f |
|
13-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Add MCSectionData::AddressSize, which is the size of the address space consumed by the section. This can differ from both the section logical size, and the section size on disk (although the current code handles this without making an explicit distinction). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103689 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
d13a0caf726e05c9bd939d752ef371d6d467ef28 |
|
12-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Simplify LayoutSection to just take the index of the section to layout. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103627 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
bc1a0cf13950dcd64d6d0398df5419a0a2931721 |
|
12-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Track section layout order explicitly, and use to simplify. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103616 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
0cc8bd48619b943379f5c2cc11a19fb189342925 |
|
25-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Stop restarting layout on every relaxation. - Still O(N^2), just a faster form, and now its the MCAsmLayout's fault. On the .s I am tuning against (combine.s from 403.gcc): -- ddunbar@lordcrumb:MC$ diff stats-before.txt stats-after.txt 5,10c5,10 < 1728 assembler - Number of assembler layout and relaxation steps < 7707 assembler - Number of emitted assembler fragments < 120588 assembler - Number of emitted object file bytes < 2233448 assembler - Number of evaluated fixups < 1727 assembler - Number of relaxed instructions < 6723845 mcexpr - Number of MCExpr evaluations --- > 3 assembler - Number of assembler layout and relaxation steps > 7707 assembler - Number of emitted assembler fragments > 120588 assembler - Number of emitted object file bytes > 14796 assembler - Number of evaluated fixups > 1727 assembler - Number of relaxed instructions > 67889 mcexpr - Number of MCExpr evaluations -- Feel free to LOL at the -before numbers, if you like. I am a little surprised we make more than 2 relaxation passes. It's pretty trivial for us to do relaxation out-of-order if that would give a speedup. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99543 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
5d428511ca9607d52a09d3483d0738f483e09934 |
|
25-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Route access to SectionData offset and file size through MCAsmLayout. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99474 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
432cd5fd9b4c97f1e4a53fcf45e16f7dd6bc085e |
|
25-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Route access to Fragment offset and effective size through MCAsmLayout. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99473 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
207e06ea0446c51cb1d89f6400ec7becc46487f8 |
|
24-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Direct all {fragment,section,symbol} address access through the MCAsmLayout object. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
a0e36d55c495b3325805c659ac365b5faea84e34 |
|
12-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Constify MCAsmLayout argument to MCExpr::EvaluteAs... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
18ff2cced7e08ac76d8d5bcff8160a5f9a109cbb |
|
11-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC/Mach-O: Start passing in the basic MCAsmLayout object. - Also, drop the current location part of AsmLayout, I think I prefer to implement this via explicit symbols. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98240 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|
f82f4490b130eca55b08d605456a4ceacccf288a |
|
11-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC: Sketch initial MCAsmLayout class, which encapsulates the current layout of an assembly file. The MCAsmLayout is also available for use by MCExpr::EvaluateAs{Absolute,Relocatable}, to allow target specific hooks and "absolutizing" of symbols. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98227 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCAsmLayout.h
|