History log of /external/llvm/include/llvm/MC/MCExpr.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
f1d0f7781e766df878bec4e7977fa3204374f394 26-Mar-2012 Craig Topper <craig.topper@gmail.com> Prune some includes and forward declarations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153429 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
d4a19b6a72d19a6f90b676aac37118664b7b7a84 11-Feb-2012 Anton Korobeynikov <asl@math.spbu.ru> Add support for implicit TLS model used with MS VC runtime.
Patch by Kai Nacke!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150307 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
34982576a43887e7f062ed0a3571af2cbab003f3 26-Jan-2012 James Molloy <james.molloy@arm.com> Add support for the R_ARM_TARGET1 relocation, which should be given to relocations applied to all C++ constructors and destructors.

This enables the linker to match concrete relocation types (absolute or relative) with whatever library or C++ support code is being linked against.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149057 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
99b4237c1647156f0e1d3d7e03efdab23ed79778 07-Jan-2012 Rafael Espindola <rafael.espindola@gmail.com> Split Finish into Finish and FinishImpl to have a common place to do end of
file error checking. Use that to error on an unfinished cfi_startproc.

The error is not nice, but is already better than a segmentation fault.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147717 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
bc24985c5ff01fc25336896c388bd8e4e02ffd95 22-Dec-2011 Akira Hatanaka <ahatanaka@mips.com> Local dynamic TLS model for direct object output. Create the correct TLS MIPS
ELF relocations.

Patch by Jack Carter.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147118 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
3faac0a78c7a70d3dcd2af102a132bb9da2d639c 14-Dec-2011 Akira Hatanaka <ahatanaka@mips.com> Add support for local dynamic TLS model in LowerGlobalTLSAddress. Direct object
emission is not supported yet, but a patch that adds the support should follow
soon.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146572 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
e3d3572e282733bd7aa5ac14115ed0804174e426 07-Dec-2011 Bruno Cardoso Lopes <bruno.cardoso@gmail.com> Add a few moreLocal/Global R_MIPS_GOT related fixups and
make the addend fixup code a bit more generic

Patch by Jack Carter.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145998 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
3507d24547ce668c9a50c72b6748c0a303e295c1 25-Oct-2011 Bruno Cardoso Lopes <bruno.cardoso@gmail.com> This is the first of several patches for Mips direct object generation.
This first patch is for expression variable kinds.

Patch by Jack Carter!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142934 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
a1000742d28f33dd8dd9858e64282e7749c0bd64 09-Jun-2011 Roman Divacky <rdivacky@freebsd.org> Fix emission of PPC64 assembler on non-darwin platforms by splitting
VK_PPC_{HA,LO}16 into darwin and gas variants.

Darwin wants {ha,lo}16(symbol) while gnu as wants symbol@{ha,l}.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132802 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
0eab5c4d85b4c4bb161bcdd959aa58a6f54415cc 29-Apr-2011 Daniel Dunbar <daniel@zuster.org> MCExpr: Add FindAssociatedSection, which attempts to mirror the 'as' semantics
that associate sections with expressions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130517 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
c67b1a3a76ea6ff642d30610cf63595ccb661e6b 04-Feb-2011 Bob Wilson <bob.wilson@apple.com> Remove trailing whitespace

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124830 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
7597212abced110723f2fee985a7d60557c092ec 13-Jan-2011 Evan Cheng <evan.cheng@apple.com> Model :upper16: and :lower16: as ARM specific MCTargetExpr. This is a step
in the right direction. It eliminated some hacks and will unblock codegen
work. But it's far from being done. It doesn't reject illegal expressions,
e.g. (FOO - :lower16:BAR). It also doesn't work in Thumb2 mode at all.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123369 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
33a38a1b5a35acd15c867193bc2175f3d4e7b83d 22-Dec-2010 Rafael Espindola <rafael.espindola@gmail.com> Use references and simplify.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122405 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
d076482ab7e672d1d65a43809695e8d0d3995203 18-Dec-2010 Rafael Espindola <rafael.espindola@gmail.com> Revert 122011, 122012, 122013, 122023 adding back an important optimization.
I added a note, but suggestions on how to add a test are really welcome.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122138 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
8f714fedba35bc454ff372f084090f14a25c8933 17-Dec-2010 Daniel Dunbar <daniel@zuster.org> MC/Expr: Simplify.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122023 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
2d8e3e741f49baadfc72403de9c4b362a07af8d9 17-Dec-2010 Daniel Dunbar <daniel@zuster.org> MC: Remove another dead MCAssembler argument, and update clients.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122013 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
92c66c7bf9533d0ab7cece9532c5060e7d3db6ca 17-Dec-2010 Daniel Dunbar <daniel@zuster.org> MC: Remove dead MCAssembler argument -- Rafael, can you check the FIXME I added
here?

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122012 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.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/MCExpr.h
22373b230a053a154f6c7792c6a33d4f78f5479d 06-Dec-2010 Rafael Espindola <rafael.espindola@gmail.com> Use references to simplify the code a bit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121050 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
32a006e606742b1c5401e49607e33717bb5441f0 03-Dec-2010 Rafael Espindola <rafael.espindola@gmail.com> Try to resolve symbol differences early, and if successful create a plain
data fragment. This reduces the time to assemble the test in 8711 from 60s to
54s.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120767 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
1f6efa3996dd1929fbc129203ce5009b620e6969 29-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> Merge System into Support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
1e61e69d401045c54b15815f15a0fdb3ca56a9b5 15-Nov-2010 Chris Lattner <sabre@nondot.org> add targetoperand flags for jump tables, constant pool and block address
nodes to indicate when ha16/lo16 modifiers should be used. This lets
us pass PowerPC/indirectbr.ll.

The one annoying thing about this patch is that the MCSymbolExpr isn't
expressive enough to represent ha16(label1-label2) which we need on
PowerPC. I have a terrible hack in the meantime, but this will have
to be revisited at some point.

Last major conversion item left is global variable references.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119105 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
6135a96792ca05f6366e5dbaee6208e84589c47f 14-Nov-2010 Chris Lattner <sabre@nondot.org> reimplement ppc asmprinter "toc" handling to use a VariantKind
on the operand, required for .o file writing and fixing
the PowerPC/mult-alt-generic-powerpc64.ll failure with the new
instprinter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119087 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
2c4d5125c708bb35140fc2a40b02beb1add101db 10-Nov-2010 Jim Grosbach <grosbach@apple.com> Update ARMConstantPoolValue to not use a modifier string. Use an explicit
VariantKind marker to indicate the additional information necessary. Update
MC to handle the new Kinds. rdar://8647623



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118671 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
b4d1721eff7b43577e5f2e53f885973fb6c43683 28-Oct-2010 Rafael Espindola <rafael.espindola@gmail.com> Implement TLSLD.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117547 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
0cf15d61b7e3bf53f5a99f58ada37b93bc039559 28-Oct-2010 Rafael Espindola <rafael.espindola@gmail.com> Implement DTPOFF.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117546 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
a264f72d3fb9dec1427480fcf17ef3c746ea723a 28-Oct-2010 Rafael Espindola <rafael.espindola@gmail.com> Implement TLSLDM.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117544 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
a0a2f8734cdfc19d44201b791a969bcdda96bb70 28-Oct-2010 Rafael Espindola <rafael.espindola@gmail.com> Implement VK_GOTNTPOFF and switch RelocNeedsGOT to use VariantKind.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117543 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
f230df9af4012f9510de664b6d62b128e26a5861 16-Oct-2010 Rafael Espindola <rafael.espindola@gmail.com> Add a MCObjectFormat class so that code common to all targets that use a
single object format can be shared.

This also adds support for

mov zed+(bar-foo), %eax

on ELF and COFF targets.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116675 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
637d89fe0eca4fa2b9c95f6c15eb69a99bae83bc 23-Sep-2010 Jim Grosbach <grosbach@apple.com> Add support for ELF PLT references for ARM MC asm printing. Adding a
new VariantKind to the MCSymbolExpr seems like overkill, but I'm not sure
there's a more straightforward way to get the printing difference captured.
(i.e., x86 uses @PLT, ARM uses (PLT)).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114613 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
96ac5156cadde7e4494990d5b4f873e76787a370 26-May-2010 Eric Christopher <echristo@apple.com> Start adding mach-o tls reloc support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104651 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
18c1021ec108722506125926087b1e5fcfb28046 12-May-2010 Rafael Espindola <rafael.espindola@gmail.com> Add support for movi32 of global values to the new (MC) asm printer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103576 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
9b97a73dedf736e14b04a3d1a153f10d25b2507b 30-Mar-2010 Chris Lattner <sabre@nondot.org> Rip out the 'is temporary' nonsense from the MCContext interface to
create symbols. It is extremely error prone and a source of a lot
of the remaining integrated assembler bugs on x86-64.

This fixes rdar://7807601.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99902 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
4e815f8a8cae6c846cdca52420046cab902865de 16-Mar-2010 Daniel Dunbar <daniel@zuster.org> MC: Allow modifiers in MCSymbolRefExpr, and eliminate X86MCTargetExpr.
- Although it would be nice to allow this decoupling, the assembler needs to be able to reason about MCSymbolRefExprs in too many places to make this viable. We can use a target specific encoding of the variant if this becomes an issue.
- This patch also extends llvm-mc to support parsing of the modifiers, as opposed to lumping them in with the symbol.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98592 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.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/MCExpr.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/MCExpr.h
98cdab53c302a2d6686fa428c0e896b1fb195311 10-Mar-2010 Chris Lattner <sabre@nondot.org> set the temporary bit on MCSymbols correctly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98124 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
e3e7a369f20af66a96830d8bfe52668c9e2e1fa1 10-Feb-2010 Chris Lattner <sabre@nondot.org> add a virtual dtor to MCTargetExpr, hopefully silencing some warnings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95810 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
159f527cb269002de85e671023b9231a2c8792e9 09-Feb-2010 Dan Gohman <gohman@apple.com> Add explicit keywords.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95626 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
036c130e90eb5c93b0dc0a70ad07b9343623c2a8 09-Feb-2010 Dan Gohman <gohman@apple.com> Document that MCExpr::Mod is actually remainder.

Document that MCExpr::Div, Mod, and the comparison operators are all
signed operators.

Document that the comparison operators' results are target-dependent.

Document that the behavior of shr is target-dependent.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95619 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
df9c4380ee7e60c1de5cae32685b113170b1faa2 08-Feb-2010 Chris Lattner <sabre@nondot.org> don't make hte dtor private or we can't construct the class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95587 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
5d917a8952c09a345180ec36f0df4ee5dd5eddea 08-Feb-2010 Chris Lattner <sabre@nondot.org> add scaffolding for target-specific MCExprs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95559 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
8cb9a3b13f3226b7e741768b69d26ecd6b5231f1 18-Jan-2010 Chris Lattner <sabre@nondot.org> remove the MAI argument to MCExpr::print and switch overthing to use << when printing them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93699 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
2928c83b010f7cfdb0f819199d806f6942a7d995 06-Nov-2009 Daniel Dunbar <daniel@zuster.org> Pass StringRef by value.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86251 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
8b67f774e9c38b7718b2b300b628388f966df4e0 26-Oct-2009 Chandler Carruth <chandlerc@gmail.com> Move DataTypes.h to include/llvm/System, update all users. This breaks the last
direct inclusion edge from System to Support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85086 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
7eb85194f2b07bc7ba3f274fc00dc389b77b63bf 16-Oct-2009 Daniel Dunbar <daniel@zuster.org> Minor formatting tweaks.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84235 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
e00b011e6a2597fcc3da88da91a8ffda6eebfcda 16-Oct-2009 Daniel Dunbar <daniel@zuster.org> MC: Remove unneeded context argument to MCExpr::Evaluate*.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84233 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
4f3e7aa154577c86791908e73a9fec075fdea0ba 16-Sep-2009 Chris Lattner <sabre@nondot.org> add a helper method for creating MCSymbol and MCSymbolRefExpr at
the same time.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81984 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
684c593d05db0bd277268fc9d8c05bce138c745a 03-Sep-2009 Chris Lattner <sabre@nondot.org> Thread an MCAsmInfo pointer through the various MC printing APIs,
and fix a few things using << on MCSymbols to use ->print(). No
functionality change other than unbreaking my previous patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80890 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
87392fde1f261fea161b48886fafbedddb18dcce 31-Aug-2009 Daniel Dunbar <daniel@zuster.org> llvm-mc: Add MCExpr::{dump,print}.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80570 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
9643ac55142d40da404caa8e5fedfef2cd7b4afc 31-Aug-2009 Daniel Dunbar <daniel@zuster.org> llvm-mc: Switch MCExpr construction to using static member functions, and taking the MCContext (which now owns all MCExprs).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80569 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h
28c251b54b0b311749f07babe0f6909e71e877bc 31-Aug-2009 Daniel Dunbar <daniel@zuster.org> llvm-mc: Move AsmExpr into MC lib (as MCExpr).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80567 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCExpr.h