2018-05-22 14:39:23 by Adam Ciarcinski | Files touched by this commit (10) | |
Log message:
llvm: updated to 5.0.2
5.0.2:
Bug fix release.
|
2017-12-30 11:39:25 by Adam Ciarcinski | Files touched by this commit (14) | |
Log message:
llvm: updated to 5.0.1
LLVM 5.0.1:
This release contains bug-fixes for the LLVM 5.0.0 release. This
release is API and ABI compatible with 5.0.0.
|
2017-12-01 20:22:13 by Adam Ciarcinski | Files touched by this commit (34) | |
Log message:
llvm: updated to 5.0.0
5.0.0:
Non-comprehensive list of changes in this release
* LLVM’s WeakVH has been renamed to WeakTrackingVH and a new WeakVH has been \
introduced. The new WeakVH nulls itself out on deletion, but does not track \
values across RAUW.
* A new library named BinaryFormat has been created which holds a collection of \
code which previously lived in Support. This includes the file_magic structure \
and identify_magic functions, as well as all the structure and type definitions \
for DWARF, ELF, COFF, WASM, and MachO file formats.
* The tool llvm-pdbdump has been renamed llvm-pdbutil to better reflect its \
nature as a general purpose PDB manipulation / diagnostics tool that does more \
than just dumping contents.
* The BBVectorize pass has been removed. It was fully replaced and no longer \
used back in 2014 but we didn’t get around to removing it. Now it is gone. The \
SLP vectorizer is the suggested non-loop vectorization pass.
* A new tool opt-viewer.py has been added to visualize optimization remarks in \
HTML. The tool processes the YAML files produced by clang with the \
-fsave-optimization-record option.
* A new CMake macro LLVM_REVERSE_ITERATION has been added. If enabled, all \
supported unordered LLVM containers would be iterated in reverse order. This is \
useful for uncovering non-determinism caused by iteration of unordered \
containers. Currently, it supports reverse iteration of SmallPtrSet and \
DenseMap.
* A new tool llvm-dlltool has been added to create short import libraries from \
GNU style definition files. The tool utilizes the PE COFF SPEC Import Library \
Format and PE COFF Auxiliary Weak Externals Format to achieve compatibility with \
LLD and MSVC LINK.
|
2017-07-11 21:47:38 by Adam Ciarcinski | Files touched by this commit (15) |
Log message:
Changes 4.0.1:
This is a bug-fix release.
|
2017-05-06 03:38:43 by Kamil Rytarowski | Files touched by this commit (3) |
Log message:
Mark c++11 requirement
|
2017-05-06 01:13:05 by Kamil Rytarowski | Files touched by this commit (7) |
Log message:
Update buildlink3.mk with reality in LLVM projects
|
2017-03-17 23:38:18 by Adam Ciarcinski | Files touched by this commit (38) |
Log message:
LLVM 4.0.0:
The minimum compiler version required for building LLVM has been raised to 4.8 \
for GCC and 2015 for Visual Studio.
The C API functions LLVMAddFunctionAttr, LLVMGetFunctionAttr, \
LLVMRemoveFunctionAttr, LLVMAddAttribute, LLVMRemoveAttribute, LLVMGetAttribute, \
LLVMAddInstrAttribute and LLVMRemoveInstrAttribute have been removed.
The C API enum LLVMAttribute has been deleted.
The definition and uses of LLVM_ATRIBUTE_UNUSED_RESULT in the LLVM source were \
replaced with LLVM_NODISCARD, which matches the C++17 [[nodiscard]] semantics \
rather than gccâs __attribute__((warn_unused_result)).
The Timer related APIs now expect a Name and Description. When upgrading code \
the previously used names should become descriptions and a short name in the \
style of a programming language identifier should be added.
LLVM now handles invariant.group across different basic blocks, which makes it \
possible to devirtualize virtual calls inside loops.
The aggressive dead code elimination phase (âadceâ) now removes \
branches which do not effect program behavior. Loops are retained by default \
since they may be infinite but these can also be removed with LLVM option \
-adce-remove-loops when the loop body otherwise has no live operations.
The llvm-cov tool can now export coverage data as json. Its html output mode has \
also improved.
|
2017-01-05 12:54:32 by Adam Ciarcinski | Files touched by this commit (16) | |
Log message:
Changes 3.9.1:
The LLVMContext gains a new runtime check (see LLVMContext::discardValueNames()) \
that can be set to discard Value names (other than GlobalValue). This is \
intended to be used in release builds by clients that are interested in saving \
CPU/memory as much as possible.
There is no longer a âglobal contextâ available in LLVM, except for \
the C API.
The autoconf build system has been removed in favor of CMake. LLVM 3.9 requires \
CMake 3.4.3 or later to build. For information about using CMake please see the \
documentation on Building LLVM with CMake. For information about the CMake \
language there is also a CMake Primer document available.
C API functions LLVMParseBitcode, LLVMParseBitcodeInContext, \
LLVMGetBitcodeModuleInContext and LLVMGetBitcodeModule having been removed. \
LLVMGetTargetMachineData has been removed (use LLVMGetDataLayout instead).
The C API function LLVMLinkModules has been removed.
The C API function LLVMAddTargetData has been removed.
The C API function LLVMGetDataLayout is deprecated in favor of LLVMGetDataLayoutStr.
The C API enum LLVMAttribute and associated API is deprecated in favor of the \
new LLVMAttributeRef API. The deprecated functions are LLVMAddFunctionAttr, \
LLVMAddTargetDependentFunctionAttr, LLVMRemoveFunctionAttr, LLVMGetFunctionAttr, \
LLVMAddAttribute, LLVMRemoveAttribute, LLVMGetAttribute, LLVMAddInstrAttribute, \
LLVMRemoveInstrAttribute and LLVMSetInstrParamAlignment.
TargetFrameLowering::eliminateCallFramePseudoInstr now returns an iterator to \
the next instruction instead of void. Targets that previously did MBB.erase(I); \
return; now probably want return MBB.erase(I);.
SelectionDAGISel::Select now returns void. Out-of-tree targets will need to be \
updated to replace the argument node and remove any dead nodes in cases where \
they currently return an SDNode * from this interface.
Added the MemorySSA analysis, which hopes to replace MemoryDependenceAnalysis. \
It should provide higher-quality results than MemDep, and be algorithmically \
faster than MemDep. Currently, GVNHoist (which is off by default) makes use of \
MemorySSA.
The minimum density for lowering switches with jump tables has been reduced from \
40% to 10% for functions which are not marked optsize (that is, compiled with \
-Os).
|
2016-11-14 21:49:16 by Ryo ONODERA | Files touched by this commit (4) |
Log message:
Update to 3.9.0
Changelog:
* Polly directly available in clang/opt/bugpoint
* Increased analysis coverage
* Fine-grain dependences analysis
* Update of the isl math library
|
2016-09-20 00:32:41 by Kamil Rytarowski | Files touched by this commit (1) |
Log message:
Regenerate distinfo to fix build
Noted by <dh>
|