cddc3e03e4ec99c0268c03a126195173e519ed58 |
|
04-Mar-2016 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master LLVM for rebase to r256229 http://b/26987366 (cherry picked from commit f3ef5332fa3f4d5ec72c178a2b19dac363a19383) Change-Id: Ic75dcb63191d65df1b69724576392c0aaeb47728
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
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/lib/Target/TargetLoweringObjectFile.cpp
|
0c7f116bb6950ef819323d855415b2f2b0aad987 |
|
06-May-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master LLVM for rebase to r235153 Change-Id: I9bf53792f9fc30570e81a8d80d296c681d005ea7
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
4c5e43da7792f75567b693105cc53e3f1992ad98 |
|
08-Apr-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master llvm for rebase to r233350 Change-Id: I07d935f8793ee8ec6b7da003f6483046594bca49
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
ebe69fe11e48d322045d5949c83283927a0d790b |
|
23-Mar-2015 |
Stephen Hines <srhines@google.com> |
Update aosp/master LLVM for rebase to r230699. Change-Id: I2b5be30509658cb8266be782de0ab24f9099f9b9
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
37ed9c199ca639565f6ce88105f9e39e898d82d0 |
|
01-Dec-2014 |
Stephen Hines <srhines@google.com> |
Update aosp/master LLVM for rebase to r222494. Change-Id: Ic787f5e0124df789bd26f3f24680f45e678eef2d
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
dce4a407a24b04eebc6a376f8e62b41aaa7b071f |
|
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update LLVM for 3.5 rebase (r209712). Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
36b56886974eae4f9c5ebc96befd3e7bfe5de338 |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Update to LLVM 3.5a. Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
93cf0939f95b3d580d9c05375a7c84164e1ba72e |
|
29-Oct-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Move getSymbol to TargetLoweringObjectFile. This allows constructing a Mangler with just a TargetMachine. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193630 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
716a94f0c96d6bef575cd286bafb2cc507adc6b0 |
|
02-Jul-2013 |
Ulrich Weigand <ulrich.weigand@de.ibm.com> |
[DebugInfo] Allow getDebugThreadLocalSymbol to return MCExpr This allows getDebugThreadLocalSymbol to return a generic MCExpr instead of just a MCSymbolRefExpr. This is in preparation for supporting debug info for TLS variables on PowerPC, where we need to describe the variable location using a more complex expression than just MCSymbolRefExpr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185460 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
59eaa3874663f80ce111a4781b8f1db82995210c |
|
28-Jun-2013 |
David Blaikie <dblaikie@gmail.com> |
DebugInfo: PR14728: TLS support Based on GCC's output for TLS variables (OP_constNu, x@dtpoff, OP_lo_user), this implements debug info support for TLS in ELF. Verified that this output is correct/sufficient on Linux (using gold - if you're using binutils-ld, you'll need something with the fix for http://sourceware.org/bugzilla/show_bug.cgi?id=15685 in it). Support on non-ELF is sort of "arbitrary" at the moment - if Apple folks want to discuss (or just go ahead & implement) how this should work in MachO, etc, I'm open. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185203 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
0b8c9a80f20772c3793201ab5b251d3520b9cea3 |
|
02-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Move all of the header files which are involved in modelling the LLVM IR into their new header subdirectory: include/llvm/IR. This matches the directory structure of lib, and begins to correct a long standing point of file layout clutter in LLVM. There are still more header files to move here, but I wanted to handle them in separate commits to make tracking what files make sense at each layer easier. The only really questionable files here are the target intrinsic tablegen files. But that's a battle I'd rather not fight today. I've updated both CMake and Makefile build systems (I think, and my tests think, but I may have missed something). I've also re-sorted the includes throughout the project. I'll be committing updates to Clang, DragonEgg, and Polly momentarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
d04a8d4b33ff316ca4cf961e06c9e312eff8e64f |
|
03-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Use the new script to sort the includes of every file under lib. Sooooo many of these had incorrect or strange main module includes. I have manually inspected all of these, and fixed the main module include to be the nearest plausible thing I could find. If you own or care about any of these source files, I encourage you to take some time and check that these edits were sensible. I can't have broken anything (I strictly added headers, and reordered them, never removed), but they may not be the headers you'd really like to identify as containing the API being implemented. Many forward declarations and missing includes were added to a header files to allow them to parse cleanly when included first. The main module rule does in fact have its merits. =] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169131 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
25efd6d556718295a63d37f5294985746af354f6 |
|
14-Nov-2012 |
Anton Korobeynikov <asl@math.spbu.ru> |
Use TARGET2 relocation for TType references on ARM. Do some cleanup of the code while here. Inspired by patch by Logan Chien! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167904 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
3574eca1b02600bac4e625297f4ecf745f4c4f32 |
|
08-Oct-2012 |
Micah Villmow <villmow@gmail.com> |
Move TargetData to DataLayout. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165402 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
f2eed387d48e36f12a9945c6b71b20bdc7f46e3a |
|
05-May-2012 |
Eric Christopher <echristo@apple.com> |
Typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156226 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
4e02f23de24375294005f88b5254a3775d39fcb2 |
|
27-Mar-2012 |
Craig Topper <craig.topper@gmail.com> |
Prune some includes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153502 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
7302d80490feabfc8a01bee0fa698aab55169544 |
|
06-Feb-2012 |
Chris Lattner <sabre@nondot.org> |
Remove some dead code and tidy things up now that vectors use ConstantDataVector instead of always using ConstantVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149912 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
29cc6cb4d1aa22f0a27edf4e5b363071a83a65d8 |
|
24-Jan-2012 |
Chris Lattner <sabre@nondot.org> |
C++, CBE, and TLOF support for ConstantDataSequential git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148805 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
732f05c41f177a0bc4d47e93a5d02120f146cb4c |
|
10-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Add 'llvm_unreachable' to passify GCC's understanding of the constraints of several newly un-defaulted switches. This also helps optimizers (including LLVM's) recognize that every case is covered, and we should assume as much. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147861 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
2bd335470f8939782f3df7f6180282d3825d4f09 |
|
10-Jan-2012 |
David Blaikie <dblaikie@gmail.com> |
Remove unnecessary default cases in switches that cover all enum values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147855 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
8a8d479214745c82ef00f08d4e4f1c173b5f9ce2 |
|
02-Dec-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Move global variables in TargetMachine into new TargetOptions class. As an API change, now you need a TargetOptions object to create a TargetMachine. Clang patch to follow. One small functionality change in PTX. PTX had commented out the machine verifier parts in their copy of printAndVerify. That now calls the version in LLVMTargetMachine. Users of PTX who need verification disabled should rely on not passing the command-line flag to enable it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145714 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
203576aa0cb9d8bf2d2e4d910ebab4b7a63262ae |
|
20-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Goodbye TargetAsmInfo. This eliminate last bit of CodeGen and Target in llvm-mc. There is still a bit more refactoring left to do in Targets. But we are now very close to fixing all the layering issues in MC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
e76a33b9567d78a5744dc52fcec3a6056d6fb576 |
|
20-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Add MCObjectFileInfo and sink the MCSections initialization code from TargetLoweringObjectFileImpl down to MCObjectFileInfo. TargetAsmInfo is done to one last method. It's *almost* gone! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135569 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
db125cfaf57cc83e7dd7453de2d509bc8efd0e5e |
|
18-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
land David Blaikie's patch to de-constify Type, with a few tweaks. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135375 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
9bc402c8d4b547ab644d39a37033c1e4ef67c3cd |
|
13-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Fix up TargetLoweringObjectFile ctors to properly initialize fields. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135068 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
4c0c446d7458ffcfbe108ea71f1915f387e150e7 |
|
23-Jun-2011 |
Bill Wendling <isanbard@gmail.com> |
Use the presence of the __compact_unwind section to indicate that a target supports compact unwind info instead of having a separate flag indicating this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133685 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
1a3ab63cb59d7f7726b47cdda3b9509e999d1653 |
|
23-Jun-2011 |
Bill Wendling <isanbard@gmail.com> |
Add a flag that indicates whether a target supports compact unwind info or not. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133662 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
aa0a8f317791b4de07a6c7a2b9705c4183052b54 |
|
23-Jun-2011 |
Bill Wendling <isanbard@gmail.com> |
Add a __LD,__compact_unwind section. If the linker supports it, this will hold the CIE and FDE information in a compact format. The implementation of the compact unwinding emission is coming soon. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133658 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
7d715dfe6d66be257926f626df96a0e2bd38dc1f |
|
19-Jun-2011 |
Jay Foad <jay.foad@gmail.com> |
Fix a FIXME by making GlobalVariable::getInitializer() return a const Constant *. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133400 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
087aad44cb37b361e8ed84f197138b366c764f9a |
|
05-May-2011 |
Bill Wendling <isanbard@gmail.com> |
Remove a flag that would set the ".eh" symbol as .globl. MachO was the only one who used this flag, and it now emits CFI and doesn't emit this anymore. All other targets left this flag "false". <rdar://problem/8486371> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130918 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
5426a9ee37667660935d80841c5392d78e254318 |
|
01-May-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
GCC uses a different encoding of pointers in the FDE when using -fno-dwarf2-cfi-asm. Implement the same behavior. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130637 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
60246a96224c8b790177253bf25433b93b335d2b |
|
28-Apr-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove unnecessary argument. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130343 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
7afec9cc0ff1654619d30b6f30e2a4d13369c8bf |
|
28-Apr-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Rename getPersonalityPICSymbol to getCFIPersonalitySymbol, document it, and give it a bit more responsibility. Also implement it for MachO. If hacked to use cfi, 32 bit MachO will produce .cfi_personality 155, L___gxx_personality_v0$non_lazy_ptr and 64 bit will produce .cfi_presonality ___gxx_personality_v0 The general idea is that .cfi_personality gets passed the final symbol. It is up to codegen to produce it if using indirect representation (like 32 bit MachO), but it is up to MC to decide which relocations to create. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130341 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
4788c3e839203dc75ba9fe2026f315095677715c |
|
20-Apr-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove unused arguments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129844 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
6144686af6b62480c1a72b9f648c3823c6ed0dba |
|
16-Apr-2011 |
Francois Pichet <pichet2000@gmail.com> |
MSVC needs the return 0 to compile. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129640 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
30deafc84adf88f643cdc39dc97a37537155347f |
|
16-Apr-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Put each personality function in a section. This fixes the gnu ld warning: error in foo.o; no .eh_frame_hdr table will be created. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129635 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
f0adba9a7ec8a3031876575a6ffb7db5f1b6f855 |
|
15-Apr-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add 129518 back with a fix for when we are producing eh just because of debug info. Change ELF systems to use CFI for producing the EH tables. This reduces the size of the clang binary in Debug builds from 690MB to 679MB. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129571 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
bcb8c6d09ee426e0f774e3412912f6ae9e5f78dd |
|
15-Apr-2011 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Revert r129518, "Change ELF systems to use CFI for producing the EH tables. This reduces the" It broke several builds. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129557 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
3dae6e7333b8fae7b79ddb99757ab5de73890af9 |
|
14-Apr-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Change ELF systems to use CFI for producing the EH tables. This reduces the size of the clang binary in Debug builds from 690MB to 679MB. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129518 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
0cf5e3d51dd455a174a8f00cfa6b63c11e535434 |
|
23-Jan-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Delay the creation of eh_frame so that the user can change the defaults. Add support for SHT_X86_64_UNWIND. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124059 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
32899199c043269b4dfab7f0429cc946e67bd54d |
|
18-Jan-2011 |
Chris Lattner <sabre@nondot.org> |
minor change to rafael's recent patches: if something is constant but requires a unique address, we can still put it in a readonly section, just not a mergable one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123711 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
7010401c6bdfb9895eba73af4fa7cb896f032ebe |
|
16-Jan-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Only put unnamed_addr constants in mergeable sections. Fixes PR8297. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123585 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
8048ebe91d76f5ee58f5c2c7535151d782af4b29 |
|
27-Sep-2010 |
Chris Lattner <sabre@nondot.org> |
the latest assembler that runs on powerpc 10.4 machines doesn't support aligned comm. Detect when compiling for 10.4 and don't emit an alignment for comm. THis will hopefully fix PR8198. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114817 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
e368b460a206fafa0d31d5d059b1779b94f7df8c |
|
18-Jun-2010 |
Dan Gohman <gohman@apple.com> |
Eliminate unnecessary uses of getZExtValue(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
75361b69f3f327842b9dad69fa7f28ae3b688412 |
|
08-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
rename llvm::llvm_report_error -> llvm::report_fatal_error git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100709 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
77e76940269b1bed36bc31ee5139b5c90fd13836 |
|
17-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
fix GetOrCreateTemporarySymbol to require a name, clients should use CreateTempSymbol() if they don't care about the name. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98712 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
73ff564d65e9c748562c5734d1f72a2a233f0275 |
|
12-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
finally give Mangler a getSymbol method, which returns an MCSymbol for a global instead of messing around with string buffers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
f789d26f810243ffd6db79e15a6f10821d785308 |
|
12-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
make TargetLoweringObjectFile::getExprForDwarfReference just make unnamed temp symbols instead of having to come up with its own names. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98324 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
42263e2e407ab7d1d805e7b41cffd7217134d3b6 |
|
11-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
fix a fixme in TargetLoweringObjectFile::getExprForDwarfReference where we used ot create an MCSymbol for ".". Now emit an assembler temporary label and reference it instead of "." textually. rdar://7739457 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98292 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
3192d14076dbe5724ce85b9d48644bb3c081f0e5 |
|
11-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
rename getSymbolForDwarf* to getExprForDwarf* since it returns an MCExpr and not an MCSymbol. Change it to take an MCStreamer, which is currently unused. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98278 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
09d53fecfcc93377627b6ee7b4d92f8a6ff152e9 |
|
10-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
move three lowering hooks from MAI to TLOF and make one of them semantic instead of syntactic. This completes MCization of darwin/x86[-64]! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98145 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
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/lib/Target/TargetLoweringObjectFile.cpp
|
b76beda30a3630a9fd5fde10f43d27dd51fb5037 |
|
16-Feb-2010 |
Bill Wendling <isanbard@gmail.com> |
Make error statement more personal. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96410 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
362dd0bef5437f85586c046bc53287b6fbe9c099 |
|
15-Feb-2010 |
Anton Korobeynikov <asl@math.spbu.ru> |
Move TLOF implementations to libCodegen to resolve layering violation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96288 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
990a9fde39b7d9ff7af8beb51752c16f53c0b3d3 |
|
15-Feb-2010 |
Anton Korobeynikov <asl@math.spbu.ru> |
Add suffix for stubs, so we won't have name clashes with private symbols. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96286 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
9184b25fa543a900463215c11635c2c014ddb623 |
|
15-Feb-2010 |
Anton Korobeynikov <asl@math.spbu.ru> |
Preliminary patch to improve dwarf EH generation - Hooks to return Personality / FDE / LSDA / TType encoding depending on target / options (e.g. code model / relocation model) - MCIzation of Dwarf EH printer to use encoding information - Stub generation for ELF target (needed for indirect references) - Some other small changes here and there git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96285 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
a46918d2b1b63aa3db94aa10b9ea70209b84e274 |
|
22-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Simplify some uses of str(n)cmp with StringRef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94189 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
814819f6ea7fb0638fe73920299fda0da941a59e |
|
19-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
stop using the .lcomm pseudoop on darwin, instead, directly use the .zerofill directive. Streamerize its generation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93868 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
ce8749e445fdd0493758932874bad50293647df9 |
|
19-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
make TLOF subclassify BSS based on linkage type into private, external and everything else (weak). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93846 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
c7fbe903898ebf322cc375127bca85f4011cb266 |
|
19-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
fix a significant difference between llvm and gcc on ELF systems: GCC would put weak zero initialized mutable data in the .bss section, we would put it into a crasy '.gnu.linkonce.b.test,"aw",@nobits' section. Fixing this will allow simplifications next up. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93844 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
a3839bc3714e6a84222f45cf4c0f1a20a88b10cd |
|
19-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
introduce a section kind for common linkage. Use this to slightly simplify and commonize some of the asmprinter logic for globals. This also avoids printing the MCSection for .zerofill, which broke the llvm-gcc build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93843 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
aac138e84dee1cb3ffc1035b2a1e4361fe0b4f80 |
|
19-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
Cleanup handling of .zerofill on darwin: 1. TargetLoweringObjectFileMachO should decide if something goes in zerofill instead of having every target do it. 2. TargetLoweringObjectFileMachO should assign said symbols to the right MCSection, the asmprinters should just emit to the right section. 3. Since all zerofill stuff goes through mcstreamer anymore, MAI can have a bool "haszerofill" instead of having the textual directive to emit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93838 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
acd03ae6791fc0fb9f1b05247a1dc082b46b8d8b |
|
17-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
Get MCSymbol out of the mangling business, and move all the logic to Mangler. Now MCSymbol just decides whether to slap quotes around a symbol when printing it. This also fixes some weirdness where two MCSymbols could be created for the same symbol, if one needed to be mangled and got mangled to the other one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93690 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
45111d160cf0910030eeb6a949c69273502e5ad5 |
|
16-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
move the mangler into libtarget from vmcore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93664 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
036d8f9581c76b68cac08876be65b362c3a54bc3 |
|
16-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
fix build failure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93628 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
0b3735e65af1cc3ff7fb76e2b30e2ffb2604f400 |
|
16-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
remove a couple of actively incorrect uses of getMangledName. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93627 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
8da8d4b12a7e36e219894c256f545ddea66a9c49 |
|
13-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
fix ELF section mangling stuff for weak symbols to not use obsolete Mangler interfaces. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93356 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
cab16cc9a34b8a18e9f91c99085b2f0a1d287e12 |
|
13-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
Use the GV version of getNameWithPrefix in TargetLoweringObjectFileCOFF:: SelectSectionForGlobal, unbreaking weak globals with no-name. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93336 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
4d5f06fbe55ef7dd1d7709407d7b963965c077cf |
|
13-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
add a fixme, ELF MCSection isn't quite right and weak unnamed globals are broken on linux (even though they are pointless, they shouldn't ICE). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93308 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
ee9250bb4f88364511cfda9ae95ad787bff1a72c |
|
13-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
eliminate some uses of Mangler::makeNameProper. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93305 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
4813035b726e7f0a3fd17bec437185fc72a50988 |
|
13-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
change Mangler::makeNameProper to return its result in a SmallVector instead of returning it in an std::string. Based on this change: 1. Change TargetLoweringObjectFileCOFF::getCOFFSection to take a StringRef 2. Change a bunch of targets to call makeNameProper with a smallstring, making several of them *much* more efficient. 3. Rewrite Mangler::makeNameProper to not build names and then prepend prefixes, not use temporary std::strings, and to avoid other crimes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
a07b7504050e10508144b294b2c7996fe8794e0c |
|
07-Jan-2010 |
Eric Christopher <echristo@apple.com> |
We need to put any kind of data with a relocation into a not-readonly segment on darwin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92933 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
fb7634f1c7a804829fc55e3711ba62c8ade818d0 |
|
19-Nov-2009 |
Bill Wendling <isanbard@gmail.com> |
Reverting the EH table patches. $ svn merge -c -89279 https://llvm.org/svn/llvm-project/llvm/trunk --- Reverse-merging r89279 into '.': U lib/CodeGen/AsmPrinter/DwarfException.cpp U lib/Target/TargetLoweringObjectFile.cpp $ svn merge -c -89270 https://llvm.org/svn/llvm-project/llvm/trunk --- Reverse-merging r89270 into '.': G lib/CodeGen/AsmPrinter/DwarfException.cpp G lib/Target/TargetLoweringObjectFile.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89379 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
01c69374b508bad0ee71cd3c49414a325238e29a |
|
19-Nov-2009 |
Bill Wendling <isanbard@gmail.com> |
The "ReadOnlyWithRel" enum seems to apply more to what Darwin does with the EH exception table than DataRel. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
ec0445855179d2c9fb98a2c8a42e03525762f45f |
|
19-Nov-2009 |
Bill Wendling <isanbard@gmail.com> |
Attempt #2: Place the EH table in the __TEXT section on MachO. It saves space. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89270 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
8f9b0f6e881a63875e7c41319eca31751588799a |
|
07-Nov-2009 |
Chris Lattner <sabre@nondot.org> |
add some missing #includes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86367 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
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/lib/Target/TargetLoweringObjectFile.cpp
|
711bb91574db242ba34a86caea719819b0ecef43 |
|
20-Sep-2009 |
Bill Wendling <isanbard@gmail.com> |
--- Reverse-merging r82282 into '.': U lib/CodeGen/AsmPrinter/DwarfException.cpp U lib/CodeGen/AsmPrinter/DwarfException.h --- Reverse-merging r82274 into '.': U lib/Target/TargetLoweringObjectFile.cpp G lib/CodeGen/AsmPrinter/DwarfException.cpp These revisions were breaking everything. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82396 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
8d5a831bfad4ec72b15c2cb6f6e894a1bd6e726a |
|
20-Sep-2009 |
Bill Wendling <isanbard@gmail.com> |
Still one more thing wrong here... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82356 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
5511ffd763c6de8264de7bdf318564fee2bbfc99 |
|
20-Sep-2009 |
Bill Wendling <isanbard@gmail.com> |
Here's fun! It turns out that these filter functions can be internal. If they're internal, they shouldn't use the indirect pointer stuff. In the case of throw_rethrow_test, it was marked as 'internal' and calculated its own offset to its contents. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82354 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
68a77ab5d22ecfa31ca6d7d1b1161c1be261df2a |
|
20-Sep-2009 |
Bill Wendling <isanbard@gmail.com> |
Revert r82274. It's causing failures in the CINT2006 benchmarks. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82336 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
296ab7e5445f0402d0aae3814c38f964d6f547fb |
|
18-Sep-2009 |
Bill Wendling <isanbard@gmail.com> |
It's inefficient to have place the exception tables (which contain the LSDA) into the __DATA section. At launch time, dyld has to update most of the section to fix up the type info pointers. It's better to place it into the __TEXT section and use pc-rel indirect pointer encodings. Similar to the personality routine. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82274 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
8609c7c931c0213d6d29f665df2110cf3c709e4c |
|
17-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
pass machinemoduleinfo down into getSymbolForDwarfGlobalReference, currently unused. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82157 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
8c6ed05157e9c97ff8f3ccb211dd797e53228da1 |
|
16-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
Big change #1 for personality function references: Eliminate the PersonalityPrefix/Suffix & NeedsIndirectEncoding fields from MAI: they aren't part of the asm syntax, they are related to the structure of the object file. To replace their functionality, add a new TLOF::getSymbolForDwarfGlobalReference method which asks targets to decide how to reference a global from EH in a pc-relative way. The default implementation just returns the symbol. The default darwin implementation references the symbol through an indirect $non_lazy_ptr stub. The bizarro x86-64 darwin specialization handles the weird "foo@GOTPCREL+4" hack. DwarfException.cpp now uses this to emit the reference to the symbol in the right way, and this also eliminates another horrible hack from DwarfException.cpp: - if (strcmp(MAI->getPersonalitySuffix(), "+4@GOTPCREL")) - O << "-" << MAI->getPCSymbol(); git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81991 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
4c0b349253d6de7054fd38fe8492fb32a19f21b6 |
|
09-Sep-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Provide proper section flags for various BSS flavours git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81322 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
8ddb569d8a1831f0e061e2f490d61bccd4166ec4 |
|
09-Sep-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Whitespace cleanup git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81321 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
16df208d4eff8414cf4294f9953caabffed1386b |
|
27-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Simplify. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80176 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
35c3531754c392a533921a465a22f67f7e8fb743 |
|
18-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
fix COFF targets (mingw/cygwin) to provide ehframe and LSDA sections git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79346 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
848c29396271b8255653b6c6b61b5482bd72c293 |
|
18-Aug-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Text sections should have 'exec' flag set. This seems to unbreak libstdc++ on linux. Patch by Dmitry Gorbachev! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79334 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
76d5ccf6afd5ae253cf3d5c2cf6acc712643d8cb |
|
17-Aug-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Clear the uniquing table when initializing TLOF to avoid a crash when the TLOF is reinitialized with a different MCContext. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79253 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
2a5e23b44ddf1efde1d98bd3379489d93a90d55a |
|
17-Aug-2009 |
Richard Osborne <richard@xmos.com> |
Update getSectionForConstant() to to allow mergable sections to be nulled out if not supported by the ELF subtarget. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79249 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
b6ab29940de8ead5b5612ae5414adc4d11e0b2e7 |
|
15-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
the .eh_frame sections we generate need to be writable (which is why they are datarel). This should fix PR4724, and is fallout from r78890. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79111 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
203b3e9e2a61be88e8d36a58c5615712e34c6a47 |
|
15-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
If ELF subtargets don't want to support 4/8/16-byte mergable sections, allow them to null out the default section pointers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79078 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
fa9ca0f788e96fe1eab506817b23d47eed1a3d36 |
|
14-Aug-2009 |
Dan Gohman <gohman@apple.com> |
Make these matching rules more strict so that they don't accidentally match unrelated things. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78966 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
fdf229eda95a542fc34d5182e1a91a22789ba122 |
|
14-Aug-2009 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Remove HasCrazyBSS and add a flag in TAI to indicate that '.section' must be emitted for PowerPC-Linux '.bss' section git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78958 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
b808588a3a5febe931896b3779d159ba90d836f7 |
|
13-Aug-2009 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Change MCSectionELF to represent a section semantically instead of syntactically as a string, very similiar to what Chris did with MachO. The parsing support and validation is not introduced yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78890 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
38cff389af1d78bd80df0479ef258493e0c5897e |
|
13-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
sink uniquing of sections out of MCContext into the ELF and PECOFF TLOF implementations. MCContext no longer maintains a string -> section map. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78874 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
c9d31524eec562f719d6818508b722b55a787d67 |
|
13-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
add some comments: MCContext owns the MCSections, but it bump pointer allocates them, so it doesn't have to explicitly free them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78870 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
e309cfa0d8945af47dd798357549c815164d53d6 |
|
13-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
reject invalid code like: int x __attribute__((section("_foo, _bar"))) = 4; int y __attribute__((section("_foo, _bar, 4byte_literals"))) = 1; git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78867 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
5dc47ff03975b9adde9dd833db2b646eb4295710 |
|
13-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
implement support for uniquing MachO sections. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78866 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
d3c4486f46226fb328ceb16d55927472fb3e0f6d |
|
13-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
reduce #includage git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78860 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
ffef8acc3e3398bdd04e947c7949befdd52faf86 |
|
11-Aug-2009 |
Dan Gohman <gohman@apple.com> |
Tidy #includes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78677 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
f9bdeddb96043559c61f176f8077e3b91a0c544f |
|
10-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
split MachO section handling stuff out to its out .h/.cpp file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78576 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
ff4bc460c52c1f285d8a56da173641bf92d49e3f |
|
10-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Make the big switch: Change MCSectionMachO to represent a section *semantically* instead of syntactically as a string. This means that it keeps track of the segment, section, flags, etc directly and asmprints them in the right format. This also includes parsing and validation support for llvm-mc and "attribute(section)", so we should now start getting errors about invalid section attributes from the compiler instead of the assembler on darwin. Still todo: 1) Uniquing of darwin mcsections 2) Move all the Darwin stuff out to MCSectionMachO.[cpp|h] 3) there are a few FIXMEs, for example what is the syntax to get the S_GB_ZEROFILL segment type? git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78547 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
892e18239308f8a02a4c83758616be84a459c19d |
|
09-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
1. Make MCSection an abstract class. 2. Move section switch printing to MCSection virtual method which takes a TAI. This eliminates textual formatting stuff from TLOF. 3. Eliminate SwitchToSectionDirective, getSectionFlagsAsString, and TLOFELF::AtIsCommentChar. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78510 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
7c599d056a41262681aa7fcd771eeed53a8e0bd2 |
|
08-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
make target-specific TLOF impls (except PIC16) create target-specific MCSection instances. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78500 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
5277b22687d3513dd29d5a9c8510cac740f933f6 |
|
08-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
eliminate TargetLoweringObjectFileSparc in favor of a TAI hook. A TAI hook is appropriate in this case because this is just an asm syntax issue, not a semantic difference. TLOF should model the semantics of the section. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78498 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
0c0cb7123346beab4e0d3ad6ce9570560b14971e |
|
08-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
now that getOrCreateSection is all object-file specific, give the impls an object-file-specific name. In the future they can take different arguments etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78495 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
fbf1d271e6a7157c1b5432e84d5633f63869b5a8 |
|
08-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
sink getOrCreateSection down into all the object file implementations, now that they create *all* the sections. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78494 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
24f654c8a4d14066233480f683d3b0dececf374a |
|
06-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Fix several fixmes and clean up code by sinking *all* section creation activity into the target-specific subclasses of TLOF. Before this, globals with explicit sections could be created by the base class. 1. make getOrCreateSection protected, add a new getExplicitSectionGlobal pure virtual method to assign sections to globals with a specified section. 2. eliminate getSpecialCasedSectionGlobals, which is now PIC specific. 3. eliminate the getKindForNamedSection virtual method, which is now just a static method for ELF. 4. Add implementions of getExplicitSectionGlobal for ELF/PECOFF/Darwin/PIC16. They are now all detangled and understandable, woo! :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78319 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
58bed8fc29b6e55e7014dcb537808043c946cd73 |
|
05-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
expose SectionKindForGlobal to curious clients, named as getKindForGlobal. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78156 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
ec409759e94cc395e4896ba6ade3fa77200c5cfd |
|
04-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
enhance codegen to put 16-bit character strings into the __TEXT,__ustring section on darwin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78068 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
7e88a50428377813606c66ac47111d9c3ea44feb |
|
04-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
fix a fixme: don't create an explicit "CStringSection" for ELF, it is just being used as a prefix, so forward substitute it directly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78067 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
1850e5add1516e945bbabf7e456c305f4bd5cc6f |
|
04-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Add support emiting for 2/4 byte mergable strings to the ".rodata.str*" section on ELF targets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78066 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
3b24c0172069a2546cd095e4b91f8b88c1ea0722 |
|
04-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
make MergeableCString be a SectionKind "abstract class", and add new concrete versions for 1/2/4-byte mergable strings. These are not actually created yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78055 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
11e9657eeb76dff6baaab1cbac0b1fb7e1abb439 |
|
03-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Eliminate textual section switching from the x86 backend, one more step towards "semantics sections" git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78002 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
18a4c16726db2b8874c7b84d04650dda80746074 |
|
02-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
move dwarf debug info section selection stuff from TAI to TLOF, unifying all the dwarf targets at the same time. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77889 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
35039ac24163e99cfab161620a9fb41f944a63d5 |
|
02-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
convert EHFrameSection to be managed by TLOF instead of TAI. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77888 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
d5bbb07ec806e6fa1e804afd7073987fdacc83e4 |
|
02-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
move getDwarfExceptionSection from TAI to TLOF and rename it to getLSDASection() to be more specific. This makes it pretty obvious that the ELF LSDA section is being specified wrong in PIC mode. We're probably getting a lot of startup-time relocations to a readonly page, which is expensive and bad. Someone who cares about ELF C++ should investigate this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77847 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
80ec2792b2b271eca55743a3cc4c8bca214fa705 |
|
02-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
convert ctors/dtors section to be in TLOF instead of TAI. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77842 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
2798119ab4d7e0b42812b3acdf37821f40dee627 |
|
02-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
(re)introduce new simpler apis for creation sectionkinds. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77834 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
83d77faf6e8fc2c1c2377d037283dc162d8667a1 |
|
02-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Remove "JumpTableDataSection" from TAI, instead, have AsmPrinter compute it based on what it knows. As part of this, rename getSectionForMergeableConstant to getSectionForConstant because it works for non-mergable constants also. The only functionality change from this is that Xcore will start dropping its jump tables into readonly section instead of data section in -static mode. This should be fine as the linker resolves the relocations. If this is a problem, let me know and we'll come up with another solution. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77833 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
824583844a8f334dd261894a3fac7ad476531667 |
|
01-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
fix a fixme by sinking various target-specific directives down into the appropriate subclasses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77815 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
94dab1e57a435198bf30c9992805a7d101d5c6c6 |
|
01-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
coff also doesn't have a ReadOnlySection yet, (!) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77814 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
56fe93c5d3734693897da59363d1aaaac1fd7d33 |
|
01-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
coff doesn't set a .bss seciton, so this is dead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77813 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
f9650c061ee89ac55740555530ca5c2842c28738 |
|
01-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
it turns out that isWeak() was basically dead anyway. Kill off SectionInfo :-/ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77812 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
27602b82c2a12b9f99c1f7fcbfb4be5ba97dbd7d |
|
01-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
don't use isWeak anymore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77810 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
968ff1196768c0b6dbcc5508025a2923bfa73fab |
|
01-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Change SectionKind to be a property that is true of a *section*, it should have no state that is specific to particular globals in the section. In this case, it means the removal of the "isWeak" and "ExplicitSection" bits. MCSection uses the new form of SectionKind. To handle isWeak, I introduced a new SectionInfo class, which is SectionKind + isWeak, and it is used by the part of the code generator that does classification of a specific global. The ExplicitSection disappears. It is moved onto MCSection as a new "IsDirective" bit. Since the Name of a section is either a section or directive, it makes sense to keep this bit in MCSection. Ultimately the creator of MCSection should canonicalize (e.g.) .text to whatever the actual section is. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77803 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
4a7bc1e5aafbb543a9a535bce54fc62d18723b35 |
|
01-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
All MCSections are now required to have a SectionKind. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77787 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
26630c1180502d07c9b2b4a9a4ba06bc5ddf180b |
|
31-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
move emitUsedDirectiveFor to TargetLoweringObjectFile and rename it to indicate that it is a predicate, not an emitter. This eliminates TAI dependencies on Mangler and GlobalValue. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77726 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
a87dea4f8c546ca748f1777a8d1cabcc06515d91 |
|
31-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
switch off of 'Section' onto MCSection. We're not properly using MCSection subclasses yet, but this is a step in the right direction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77708 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
f26e03bc7e30162197641406e37e662a15d80f7e |
|
31-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
refactor section construction in TLOF to be through an explicit initialize method, which can be called when an MCContext is available. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77687 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
82987bfe9b6ae85a8836c9f2d2e9f0ef9866edb1 |
|
31-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
fix PR4650: we only track sizes for certain objects, so only put something into the mergable section if it is one of our special cases. This could obviously be improved, but this is the minimal fix and restores us to the previous behavior. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77679 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
83d1c3db39dcde56b706b15d6684bc60fda4d276 |
|
29-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
mingw uses .data and .text, not _data and _text. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77435 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
b8f396bdbb06b585b480ada31ec8c2ab35916a55 |
|
29-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
fix PR4584 with a trivial patch now that the pieces are in place. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77434 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
e53a600f065075731d0aeb9dc8f4f3d75f5a05f8 |
|
29-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
pass the mangler down into the various SectionForGlobal methods. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77432 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
a679207d5852760c9809157eb67d2609cc3c268a |
|
29-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
constant prop a utostr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77430 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
067fe1ae5488764afb8d8fdafba65899dc221887 |
|
29-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
remove some completely wrong code. 1 is never < 16. It turns out that GCC appears to put strings of any length into the ELF cstring equivalent, so just rip out the code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77429 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
bf15e433b9ac6692e76aff0465cd93bb87f68989 |
|
28-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
Fix PR4639, a ELF-TLS regression from some of my refactoring. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77336 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
4bb253c60f895131371aa2ad1bfa5a2bea213f78 |
|
28-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
the apple "ld_classic" linker doesn't support .literal16 in 32-bit mode, and "ld64" (the default linker) falls back to it in -static mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77334 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
8fb0039ea6d41ffef7ed5c8c2b97603eb07ad67c |
|
28-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
fix unused variable warning git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77326 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|
f0144127b98425d214e59e4a1a4b342b78e3642b |
|
28-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
Rip all of the global variable lowering logic out of TargetAsmInfo. Since it is highly specific to the object file that will be generated in the end, this introduces a new TargetLoweringObjectFile interface that is implemented for each of ELF/MachO/COFF/Alpha/PIC16 and XCore. Though still is still a brutal and ugly refactoring, this is a major step towards goodness. This patch also: 1. fixes a bunch of dangling pointer problems in the PIC16 backend. 2. disables the TargetLowering copy ctor which PIC16 was accidentally using. 3. gets us closer to xcore having its own crazy target section flags and pic16 not having to shadow sections with its own objects. 4. fixes wierdness where ELF targets would set CStringSection but not CStringSection_. Factor the code better. 5. fixes some bugs in string lowering on ELF targets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77294 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetLoweringObjectFile.cpp
|