diff options
author | adam <adam> | 2012-05-23 11:02:41 +0000 |
---|---|---|
committer | adam <adam> | 2012-05-23 11:02:41 +0000 |
commit | 0a4899172d619be4a0bc93408219faeb6eb83711 (patch) | |
tree | 7597b6ec8dce077b1ad118e5f5ce30b2e71c5b4a /wm | |
parent | 153aeeb5a04a6e6fe8f36fc5cdfbcdaed2715047 (diff) | |
download | pkgsrc-0a4899172d619be4a0bc93408219faeb6eb83711.tar.gz |
Changes 3.1:
* Major New Features
- AddressSanitizer, a fast memory error detector.
- MachineInstr Bundles, Support to model instruction bundling / packing.
- ARM Integrated Assembler, A full featured assembler and direct-to-object
support for ARM.
- Basic Block Placement Probability driven basic block placement.
* LLVM IR and Core Improvements
- A new type representing 16 bit half floating point values has been added.
- IR now supports vectors of pointers, including vector GEPs.
- Module flags have been introduced. They convey information about the module
as a whole to LLVM subsystems. This is currently used to encode Objective C
ABI information.
- Loads can now have range metadata attached to them to describe the possible
values being loaded.
- The llvm.ctlz and llvm.cttz intrinsics now have an additional argument which
indicates whether the behavior of the intrinsic is undefined on a zero
input. This can be used to generate more efficient code on platforms that
only have instructions which don't return the type size when counting bits
in 0.
* Optimizer Improvements
- The loop unroll pass now is able to unroll loops with run-time trip counts.
This feature is turned off by default, and is enabled with the
-unroll-runtime flag.
- A new basic-block autovectorization pass is available. Pass -vectorize to
run this pass along with some associated post-vectorization cleanup passes.
For more information, see the EuroLLVM 2012 slides: Autovectorization with
LLVM.
- Inline cost heuristics have been completely overhauled and now closely model
constant propagation through call sites, disregard trivially dead code
costs, and can model C++ STL iterator patterns.
Diffstat (limited to 'wm')
0 files changed, 0 insertions, 0 deletions