#
96c9d95f |
| 05-Mar-2014 |
Ahmed Charles <ahmedcharles@gmail.com> |
[C++11] Replace OwningPtr::take() with OwningPtr::release().
llvm-svn: 202957
|
#
4220e9c1 |
| 04-Mar-2014 |
Chandler Carruth <chandlerc@gmail.com> |
[Modules] Move ValueHandle into the IR library where Value itself lives.
Move the test for this class into the IR unittests as well.
This uncovers that ValueMap too is in the IR library. Ironically
[Modules] Move ValueHandle into the IR library where Value itself lives.
Move the test for this class into the IR unittests as well.
This uncovers that ValueMap too is in the IR library. Ironically, the unittest for ValueMap is useless in the Support library (honestly, so was the ValueHandle test) and so it already lives in the IR unittests. Mmmm, tasty layering.
llvm-svn: 202821
show more ...
|
#
7c68bebb |
| 18-Feb-2014 |
Rafael Espindola <rafael.espindola@gmail.com> |
Rename some member variables from TD to DL.
TargetData was renamed DataLayout back in r165242.
llvm-svn: 201581
|
#
7157bb76 |
| 14-Jan-2014 |
Nico Rieck <nico.rieck@gmail.com> |
Decouple dllexport/dllimport from linkage
Representing dllexport/dllimport as distinct linkage types prevents using these attributes on templates and inline functions.
Instead of introducing furthe
Decouple dllexport/dllimport from linkage
Representing dllexport/dllimport as distinct linkage types prevents using these attributes on templates and inline functions.
Instead of introducing further mixed linkage types to include linkonce and weak ODR, the old import/export linkage types are replaced with a new separate visibility-like specifier:
define available_externally dllimport void @f() {} @Var = dllexport global i32 1, align 4
Linkage for dllexported globals and functions is now equal to their linkage without dllexport. Imported globals and functions must be either declarations with external linkage, or definitions with AvailableExternallyLinkage.
llvm-svn: 199218
show more ...
|
#
9d2e0df0 |
| 14-Jan-2014 |
Nico Rieck <nico.rieck@gmail.com> |
Revert "Decouple dllexport/dllimport from linkage"
Revert this for now until I fix an issue in Clang with it.
This reverts commit r199204.
llvm-svn: 199207
|
#
e43aaf79 |
| 14-Jan-2014 |
Nico Rieck <nico.rieck@gmail.com> |
Decouple dllexport/dllimport from linkage
Representing dllexport/dllimport as distinct linkage types prevents using these attributes on templates and inline functions.
Instead of introducing furthe
Decouple dllexport/dllimport from linkage
Representing dllexport/dllimport as distinct linkage types prevents using these attributes on templates and inline functions.
Instead of introducing further mixed linkage types to include linkonce and weak ODR, the old import/export linkage types are replaced with a new separate visibility-like specifier:
define available_externally dllimport void @f() {} @Var = dllexport global i32 1, align 4
Linkage for dllexported globals and functions is now equal to their linkage without dllexport. Imported globals and functions must be either declarations with external linkage, or definitions with AvailableExternallyLinkage.
llvm-svn: 199204
show more ...
|
#
8a8cd2ba |
| 07-Jan-2014 |
Chandler Carruth <chandlerc@gmail.com> |
Re-sort all of the includes with ./utils/sort_includes.py so that subsequent changes are easier to review. About to fix some layering issues, and wanted to separate out the necessary churn.
Also com
Re-sort all of the includes with ./utils/sort_includes.py so that subsequent changes are easier to review. About to fix some layering issues, and wanted to separate out the necessary churn.
Also comment and sink the include of "Windows.h" in three .inc files to match the usage in Memory.inc.
llvm-svn: 198685
show more ...
|
Revision tags: llvmorg-3.4.0, llvmorg-3.4.0-rc3, llvmorg-3.4.0-rc2, llvmorg-3.4.0-rc1 |
|
#
d12ccbd3 |
| 19-Nov-2013 |
Juergen Ributzka <juergen@apple.com> |
[weak vtables] Remove a bunch of weak vtables
This patch removes most of the trivial cases of weak vtables by pinning them to a single object file. The memory leaks in this version have been fixed.
[weak vtables] Remove a bunch of weak vtables
This patch removes most of the trivial cases of weak vtables by pinning them to a single object file. The memory leaks in this version have been fixed. Thanks Alexey for pointing them out.
Differential Revision: http://llvm-reviews.chandlerc.com/D2068
Reviewed by Andy
llvm-svn: 195064
show more ...
|
#
49109a27 |
| 18-Nov-2013 |
Alexey Samsonov <samsonov@google.com> |
Revert r194865 and r194874.
This change is incorrect. If you delete virtual destructor of both a base class and a subclass, then the following code: Base *foo = new Child(); delete foo; will not
Revert r194865 and r194874.
This change is incorrect. If you delete virtual destructor of both a base class and a subclass, then the following code: Base *foo = new Child(); delete foo; will not cause the destructor for members of Child class. As a result, I observe plently of memory leaks. Notable examples I investigated are: ObjectBuffer and ObjectBufferStream, AttributeImpl and StringSAttributeImpl.
llvm-svn: 194997
show more ...
|
#
dbedae89 |
| 15-Nov-2013 |
Juergen Ributzka <juergen@apple.com> |
[weak vtables] Remove a bunch of weak vtables
This patch removes most of the trivial cases of weak vtables by pinning them to a single object file.
Differential Revision: http://llvm-reviews.chandl
[weak vtables] Remove a bunch of weak vtables
This patch removes most of the trivial cases of weak vtables by pinning them to a single object file.
Differential Revision: http://llvm-reviews.chandlerc.com/D2068
Reviewed by Andy
llvm-svn: 194865
show more ...
|
#
3b442379 |
| 15-Nov-2013 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Don't try to initialize memory for a global if the allocation failed in ExecutionEngine.
Patch by Dale Martin!
llvm-svn: 194831
|
#
7ef22b84 |
| 07-Oct-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove dead code.
Support for exception handling in the legacy JIT was removed in r181354 and this code was dead since then.
Thanks to Yaron Keren for noticing it.
llvm-svn: 192101
|
#
8e97f016 |
| 12-Sep-2013 |
Elena Demikhovsky <elena.demikhovsky@intel.com> |
LLVM Interpreter: implementation of "insertvalue" and "extractvalue"; undef constatnt for structure and test for these functions.
done by Yuri Veselov (mailto:Yuri.Veselov@intel.com)
llvm-svn: 1905
LLVM Interpreter: implementation of "insertvalue" and "extractvalue"; undef constatnt for structure and test for these functions.
done by Yuri Veselov (mailto:Yuri.Veselov@intel.com)
llvm-svn: 190599
show more ...
|
Revision tags: llvmorg-3.3.1-rc1 |
|
#
af0dea13 |
| 04-Jul-2013 |
Craig Topper <craig.topper@gmail.com> |
Use SmallVectorImpl::iterator/const_iterator instead of SmallVector to avoid specifying the vector size.
llvm-svn: 185606
|
Revision tags: llvmorg-3.3.0, llvmorg-3.3.0-rc3, llvmorg-3.3.0-rc2 |
|
#
9bc53e84 |
| 14-May-2013 |
Filip Pizlo <fpizlo@apple.com> |
SectionMemoryManager shouldn't be a JITMemoryManager. Previously, the EngineBuilder interface required a JITMemoryManager even if it was being used to construct an MCJIT. But the MCJIT actually wan
SectionMemoryManager shouldn't be a JITMemoryManager. Previously, the EngineBuilder interface required a JITMemoryManager even if it was being used to construct an MCJIT. But the MCJIT actually wants a RTDyldMemoryManager. Consequently, the SectionMemoryManager, which is meant for MCJIT, derived from the JITMemoryManager and then stubbed out a bunch of JITMemoryManager methods that weren't relevant to the MCJIT.
This patch fixes the situation: it teaches the EngineBuilder that RTDyldMemoryManager is a supertype of JITMemoryManager, and that it's appropriate to pass a RTDyldMemoryManager instead of a JITMemoryManager if we're using the MCJIT. This allows us to remove the stub methods from SectionMemoryManager, and make SectionMemoryManager a direct subtype of RTDyldMemoryManager.
llvm-svn: 181820
show more ...
|
Revision tags: llvmorg-3.3.0-rc1 |
|
#
41cb64f4 |
| 15-Apr-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Make the host endianness check an integer constant expression.
I will remove the isBigEndianHost function once I update clang.
The ifdef logic is designed to * not use configure/cmake to avoid brea
Make the host endianness check an integer constant expression.
I will remove the isBigEndianHost function once I update clang.
The ifdef logic is designed to * not use configure/cmake to avoid breaking -arch i686 -arch ppc. * default to little endian * be as small as possible
It looks like sys/endian.h is the preferred header on most modern BSD systems, but it is better to change this in a followup patch as machine/endian.h is available on FreeBSD, OpenBSD, NetBSD and OS X.
llvm-svn: 179527
show more ...
|
#
be79a7ac |
| 01-Apr-2013 |
Nadav Rotem <nrotem@apple.com> |
Add support for vector data types in the LLVM interpreter.
Patch by: Veselov, Yuri <Yuri.Veselov@intel.com>
llvm-svn: 178469
|
#
29178a34 |
| 22-Jan-2013 |
Tim Northover <Tim.Northover@arm.com> |
Make APFloat constructor require explicit semantics.
Previously we tried to infer it from the bit width size, with an added IsIEEE argument for the PPC/IEEE 128-bit case, which had a default value.
Make APFloat constructor require explicit semantics.
Previously we tried to infer it from the bit width size, with an added IsIEEE argument for the PPC/IEEE 128-bit case, which had a default value. This default value allowed bugs to creep in, where it was inappropriate.
llvm-svn: 173138
show more ...
|
#
82b63578 |
| 14-Jan-2013 |
David Greene <greened@obbligato.org> |
Fix Casting
Do proper casting to eliminate a const-away-cast compiler warning.
llvm-svn: 172470
|
#
9fb823bb |
| 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
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 ...
|
#
b6ad9822 |
| 30-Dec-2012 |
Nuno Lopes <nunoplopes@sapo.pt> |
convert a bunch of callers from DataLayout::getIndexedOffset() to GEP::accumulateConstantOffset(). The later API is nicer than the former, and is correct regarding wrap-around offsets (if anyone care
convert a bunch of callers from DataLayout::getIndexedOffset() to GEP::accumulateConstantOffset(). The later API is nicer than the former, and is correct regarding wrap-around offsets (if anyone cares). There are a few more places left with duplicated code, which I'll remove soon.
llvm-svn: 171259
show more ...
|
Revision tags: llvmorg-3.2.0, llvmorg-3.2.0-rc3 |
|
#
ed0881b2 |
| 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
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, llvmorg-3.2.0-rc1 |
|
#
5da3f051 |
| 01-Nov-2012 |
Chandler Carruth <chandlerc@gmail.com> |
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 ...
|
#
fc1f2cd3 |
| 30-Oct-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Fix regression in old-style JIT.
llvm-svn: 167057
|
#
bf3eeb2d |
| 24-Oct-2012 |
Micah Villmow <villmow@gmail.com> |
Add some cleanup to the DataLayout changes requested by Chandler.
llvm-svn: 166607
|