| #
b80f9791 |
| 07-Aug-2013 |
Bill Wendling <[email protected]> |
Reapply r185872 now that the address sanitizer has been changed to support this.
Original commit message:
Stop emitting weak symbols into the "coal" sections.
The Mach-O linker has been able to su
Reapply r185872 now that the address sanitizer has been changed to support this.
Original commit message:
Stop emitting weak symbols into the "coal" sections.
The Mach-O linker has been able to support the weak-def bit on any symbol for quite a while now. The compiler however continued to place these symbols into a "coal" section, which required the linker to map them back to the base section name.
Replace the sections like this:
__TEXT/__textcoal_nt instead use __TEXT/__text __TEXT/__const_coal instead use __TEXT/__const __DATA/__datacoal_nt instead use __DATA/__data
<rdar://problem/14265330>
llvm-svn: 187939
show more ...
|
| #
7fdaee8f |
| 29-Jul-2013 |
Nico Rieck <[email protected]> |
Use proper section suffix for COFF weak symbols
32-bit symbols have "_" as global prefix, but when forming the name of COMDAT sections this prefix is ignored. The current behavior assumes that this
Use proper section suffix for COFF weak symbols
32-bit symbols have "_" as global prefix, but when forming the name of COMDAT sections this prefix is ignored. The current behavior assumes that this prefix is always present which is not the case for 64-bit and names are truncated.
llvm-svn: 187356
show more ...
|
| #
8d2d79d0 |
| 09-Jul-2013 |
Alexander Potapenko <[email protected]> |
Revert r185872 - "Stop emitting weak symbols into the "coal" sections"
This patch broke `make check-asan` on Mac, causing ld warnings like the following one:
ld: warning: direct access in __GLOBAL_
Revert r185872 - "Stop emitting weak symbols into the "coal" sections"
This patch broke `make check-asan` on Mac, causing ld warnings like the following one:
ld: warning: direct access in __GLOBAL__I_a to global weak symbol ___asan_mapping_scale means the weak symbol cannot be overridden at runtime. This was likely caused by different translation units being compiled with different visibility settings.
The resulting test binaries crashed with incorrect ASan warnings.
llvm-svn: 185923
show more ...
|
| #
0176708e |
| 08-Jul-2013 |
Bill Wendling <[email protected]> |
Stop emitting weak symbols into the "coal" sections.
The Mach-O linker has been able to support the weak-def bit on any symbol for quite a while now. The compiler however continued to place these sy
Stop emitting weak symbols into the "coal" sections.
The Mach-O linker has been able to support the weak-def bit on any symbol for quite a while now. The compiler however continued to place these symbols into a "coal" section, which required the linker to map them back to the base section name.
Replace the sections like this:
__TEXT/__textcoal_nt instead use __TEXT/__text __TEXT/__const_coal instead use __TEXT/__const __DATA/__datacoal_nt instead use __DATA/__data
<rdar://problem/14265330>
llvm-svn: 185872
show more ...
|
|
Revision tags: llvmorg-3.3.1-rc1 |
|
| #
a37acf70 |
| 06-Jul-2013 |
Nico Rieck <[email protected]> |
MC: Implement COFF .linkonce directive
llvm-svn: 185753
|
| #
1b01ae86 |
| 01-Jul-2013 |
David Blaikie <[email protected]> |
PR16493: DebugInfo with TLS on PPC crashing due to invalid relocation
Restrict the current TLS support to X86 ELF for now. Test that we don't produce it on PPC & we can flesh that test case out with
PR16493: DebugInfo with TLS on PPC crashing due to invalid relocation
Restrict the current TLS support to X86 ELF for now. Test that we don't produce it on PPC & we can flesh that test case out with the right thing once someone implements it.
llvm-svn: 185389
show more ...
|
| #
f2694970 |
| 28-Jun-2013 |
David Blaikie <[email protected]> |
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/su
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.
llvm-svn: 185203
show more ...
|
|
Revision tags: llvmorg-3.3.0, llvmorg-3.3.0-rc3, llvmorg-3.3.0-rc2, llvmorg-3.3.0-rc1 |
|
| #
55a9c97c |
| 26-Apr-2013 |
Bill Wendling <[email protected]> |
Micro-optimization
TLVs probably won't be as common as the other types of variables. Check for them last before defaulting to "DATA".
llvm-svn: 180631
|
| #
d973ca3c |
| 25-Apr-2013 |
Reid Kleckner <[email protected]> |
[mc-coff] Forward Linker Option flags into the .drectve section
Summary: This is modelled on the Mach-O linker options implementation and should support a Clang implementation of #pragma comment(lib
[mc-coff] Forward Linker Option flags into the .drectve section
Summary: This is modelled on the Mach-O linker options implementation and should support a Clang implementation of #pragma comment(lib/linker).
Reviewers: rafael
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D724
llvm-svn: 180569
show more ...
|
| #
2810a0ab |
| 18-Mar-2013 |
Anton Korobeynikov <[email protected]> |
Windows TLS: Section name prefix to ensure correct order The linker sorts the .tls$<xyz> sections by name, and we need to make sure any extra sections we produce (e.g. for weak globals) always end u
Windows TLS: Section name prefix to ensure correct order The linker sorts the .tls$<xyz> sections by name, and we need to make sure any extra sections we produce (e.g. for weak globals) always end up between .tls$AAA and .tls$ZZZ, even if the name starts with e.g. an underscore.
Patch by David Nadlinger!
llvm-svn: 177256
show more ...
|
| #
a69d0aaa |
| 05-Mar-2013 |
Bill Wendling <[email protected]> |
Remove unused #includes.
llvm-svn: 176467
|
| #
95856128 |
| 18-Jan-2013 |
Daniel Dunbar <[email protected]> |
[MC/Mach-O] Implement integrated assembler support for linker options. - Also, fixup syntax errors in LangRef and missing newline in the MCAsmStreamer.
llvm-svn: 172837
|
| #
9fb823bb |
| 02-Jan-2013 |
Chandler Carruth <[email protected]> |
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
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.
llvm-svn: 171366
show more ...
|
|
Revision tags: llvmorg-3.2.0, llvmorg-3.2.0-rc3 |
|
| #
ed0881b2 |
| 03-Dec-2012 |
Chandler Carruth <[email protected]> |
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
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. =]
llvm-svn: 169131
show more ...
|
|
Revision tags: llvmorg-3.2.0-rc2 |
|
| #
e42af369 |
| 14-Nov-2012 |
Anton Korobeynikov <[email protected]> |
Use TARGET2 relocation for TType references on ARM. Do some cleanup of the code while here.
Inspired by patch by Logan Chien!
llvm-svn: 167904
|
| #
f1aef758 |
| 13-Nov-2012 |
Michael J. Spencer <[email protected]> |
[MC][COFF] Emit weak symbols to the correct section. Patch by Dmitry Puzirev!
llvm-svn: 167877
|
|
Revision tags: llvmorg-3.2.0-rc1 |
|
| #
5da3f051 |
| 01-Nov-2012 |
Chandler Carruth <[email protected]> |
Revert the majority of the next patch in the address space series:
r165941: Resubmit the changes to llvm core to update the functions to support different pointer sizes on a per address spa
Revert the majority of the next patch in the address space series:
r165941: Resubmit the changes to llvm core to update the functions to support different pointer sizes on a per address space basis.
Despite this commit log, this change primarily changed stuff outside of VMCore, and those changes do not carry any tests for correctness (or even plausibility), and we have consistently found questionable or flat out incorrect cases in these changes. Most of them are probably correct, but we need to devise a system that makes it more clear when we have handled the address space concerns correctly, and ideally each pass that gets updated would receive an accompanying test case that exercises that pass specificaly w.r.t. alternate address spaces.
However, from this commit, I have retained the new C API entry points. Those were an orthogonal change that probably should have been split apart, but they seem entirely good.
In several places the changes were very obvious cleanups with no actual multiple address space code added; these I have not reverted when I spotted them.
In a few other places there were merge conflicts due to a cleaner solution being implemented later, often not using address spaces at all. In those cases, I've preserved the new code which isn't address space dependent.
This is part of my ongoing effort to clean out the partial address space code which carries high risk and low test coverage, and not likely to be finished before the 3.2 release looms closer. Duncan and I would both like to see the above issues addressed before we return to these changes.
llvm-svn: 167222
show more ...
|
| #
4bb926d9 |
| 15-Oct-2012 |
Micah Villmow <[email protected]> |
Resubmit the changes to llvm core to update the functions to support different pointer sizes on a per address space basis.
llvm-svn: 165941
|
| #
0c61134d |
| 11-Oct-2012 |
Micah Villmow <[email protected]> |
Revert 165732 for further review.
llvm-svn: 165747
|
| #
08318973 |
| 11-Oct-2012 |
Micah Villmow <[email protected]> |
Add in the first iteration of support for llvm/clang/lldb to allow variable per address space pointer sizes to be optimized correctly.
llvm-svn: 165726
|
| #
cdfe20b9 |
| 08-Oct-2012 |
Micah Villmow <[email protected]> |
Move TargetData to DataLayout.
llvm-svn: 165402
|
| #
d163405d |
| 19-Jul-2012 |
Bill Wendling <[email protected]> |
Remove tabs.
llvm-svn: 160475
|
| #
ca3e0ee8 |
| 19-Jun-2012 |
Rafael Espindola <[email protected]> |
Move the support for using .init_array from ARM to the generic TargetLoweringObjectFileELF. Use this to support it on X86. Unlike ARM, on X86 it is not easy to find out if .init_array should be used
Move the support for using .init_array from ARM to the generic TargetLoweringObjectFileELF. Use this to support it on X86. Unlike ARM, on X86 it is not easy to find out if .init_array should be used or not, so the decision is made via TargetOptions and defaults to off.
Add a command line option to llc that enables it.
llvm-svn: 158692
show more ...
|
|
Revision tags: llvmorg-3.1.0, llvmorg-3.1.0-rc3, llvmorg-3.1.0-rc2 |
|
| #
f1b14b71 |
| 24-Apr-2012 |
Bill Wendling <[email protected]> |
Look for the 'Is Simulated' module flag. This indicates that the program is compiled to run on a simulator.
llvm-svn: 155435
|
|
Revision tags: llvmorg-3.1.0-rc1 |
|
| #
a22828e0 |
| 23-Feb-2012 |
Anton Korobeynikov <[email protected]> |
Fix to make sure that a comdat group gets generated correctly for a static member of instantiated C++ templates.
Patch by Kristof Beyls!
llvm-svn: 151250
|