|
Revision tags: llvmorg-3.2.0 |
|
| #
3d7b0b8a |
| 19-Dec-2012 |
Bill Wendling <[email protected]> |
Rename the 'Attributes' class to 'Attribute'. It's going to represent a single attribute in the future.
llvm-svn: 170502
|
| #
65f1435a |
| 09-Dec-2012 |
Michael Ilseman <[email protected]> |
Reorganize FastMathFlags to be a wrapper around unsigned, and streamline some interfaces.
llvm-svn: 169712
|
| #
6d2ffa18 |
| 09-Dec-2012 |
Michael Ilseman <[email protected]> |
Have the bitcode reader/writer just use FPMathOperator's fast math enum directly
llvm-svn: 169710
|
| #
e94d843e |
| 07-Dec-2012 |
Bill Wendling <[email protected]> |
s/AttrListPtr/AttributeSet/g to better label what this class is going to be in the near future.
llvm-svn: 169651
|
|
Revision tags: llvmorg-3.2.0-rc3 |
|
| #
979dfbb6 |
| 03-Dec-2012 |
Michael Ilseman <[email protected]> |
Minor tweaking to SmallVector static size.
llvm-svn: 169176
|
| #
e26658d3 |
| 03-Dec-2012 |
Michael Ilseman <[email protected]> |
Since this SmallVector immediately grows on the next line, don't waste stack space. SmallVector is still needed due to existing APIs growing their arguments
llvm-svn: 169157
|
| #
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 |
|
| #
ee5984df |
| 27-Nov-2012 |
Bill Wendling <[email protected]> |
Remove the dependent libraries feature.
The dependent libraries feature was never used and has bit-rotted. Remove it.
llvm-svn: 168694
|
| #
9978d7e9 |
| 27-Nov-2012 |
Michael Ilseman <[email protected]> |
Fast-math flags for the bitcode
Added in bitcode enum for the serializing of fast-math flags. Added in the reading/writing of fast-math flags from the OptimizationFlags record for BinaryOps.
llvm-s
Fast-math flags for the bitcode
Added in bitcode enum for the serializing of fast-math flags. Added in the reading/writing of fast-math flags from the OptimizationFlags record for BinaryOps.
llvm-svn: 168646
show more ...
|
| #
2ad8df24 |
| 25-Nov-2012 |
Joe Abbey <[email protected]> |
Code Custodian: - Widespread trailing space removal - A dash of OCD spacing to block align enums - joined a line that probably needed 80 cols a while back
llvm-svn: 168566
|
| #
26ee2b84 |
| 15-Nov-2012 |
Michael Ilseman <[email protected]> |
Remove trailing whitespace
llvm-svn: 168103
|
|
Revision tags: llvmorg-3.2.0-rc1 |
|
| #
8c9e9411 |
| 11-Oct-2012 |
Jan Wen Voung <[email protected]> |
Fix some typos 165739, spotted by Duncan.
llvm-svn: 165753
|
| #
afaced07 |
| 11-Oct-2012 |
Jan Wen Voung <[email protected]> |
Change encoding of instruction operands in bitcode binaries to be relative to the instruction position. The old encoding would give an absolute ID which counts up within a function, and only resets
Change encoding of instruction operands in bitcode binaries to be relative to the instruction position. The old encoding would give an absolute ID which counts up within a function, and only resets at the next function.
I.e., Instead of having:
... = icmp eq i32 n-1, n-2 br i1 ..., label %bb1, label %bb2
it will now be roughly:
... = icmp eq i32 1, 2 br i1 1, label %bb1, label %bb2
This makes it so that ids remain relatively small and can be encoded in fewer bits.
With this encoding, forward reference operands will be given negative-valued IDs. Use signed VBRs for the most common case of forward references, which is phi instructions.
To retain backward compatibility we bump the bitcode version from 0 to 1 to distinguish between the different encodings.
llvm-svn: 165739
show more ...
|
| #
e51b9497 |
| 25-Sep-2012 |
Bill Wendling <[email protected]> |
Move remaining methods inside the Attributes class. Merge the 'Attribute' namespaces.
llvm-svn: 164631
|
| #
18fcdcfb |
| 05-Sep-2012 |
Chad Rosier <[email protected]> |
[ms-inline asm] Add support for the nsdialect keyword in the Bitcode Reader/Writer.
llvm-svn: 163185
|
| #
34bc34ec |
| 17-Aug-2012 |
Bill Wendling <[email protected]> |
Change the `linker_private_weak_def_auto' linkage to `linkonce_odr_auto_hide' to make it more consistent with its intended semantics.
The `linker_private_weak_def_auto' linkage type was meant to aut
Change the `linker_private_weak_def_auto' linkage to `linkonce_odr_auto_hide' to make it more consistent with its intended semantics.
The `linker_private_weak_def_auto' linkage type was meant to automatically hide globals which never had their addresses taken. It has nothing to do with the `linker_private' linkage type, which outputs the symbols with a `l' (ell) prefix among other things.
The intended semantic is more like the `linkonce_odr' linkage type.
Change the name of the linkage type to `linkonce_odr_auto_hide'. And therefore changing the semantics so that it produces the correct output for the linker.
Note: The old linkage name `linker_private_weak_def_auto' will still parse but is not a synonym for `linkonce_odr_auto_hide'. This should be removed in 4.0. <rdar://problem/11754934>
llvm-svn: 162114
show more ...
|
| #
cbe34b4c |
| 23-Jun-2012 |
Hans Wennborg <[email protected]> |
Extend the IL for selecting TLS models (PR9788)
This allows the user/front-end to specify a model that is better than what LLVM would choose by default. For example, a variable might be declared as
Extend the IL for selecting TLS models (PR9788)
This allows the user/front-end to specify a model that is better than what LLVM would choose by default. For example, a variable might be declared as
@x = thread_local(initialexec) global i32 42
if it will not be used in a shared library that is dlopen'ed.
If the specified model isn't supported by the target, or if LLVM can make a better choice, a different model may be used.
llvm-svn: 159077
show more ...
|
| #
8e00efea |
| 23-Jun-2012 |
Stepan Dyatkovskiy <[email protected]> |
Optimized usage of new SwitchInst case values (IntegersSubset type) in Local.cpp, Execution.cpp and BitcodeWriter.cpp. I got about 1% of compile-time improvement on my machines (Ubuntu 11.10 i386 and
Optimized usage of new SwitchInst case values (IntegersSubset type) in Local.cpp, Execution.cpp and BitcodeWriter.cpp. I got about 1% of compile-time improvement on my machines (Ubuntu 11.10 i386 and Ubuntu 12.04 x64).
llvm-svn: 159076
show more ...
|
| #
0e46d8a0 |
| 02-Jun-2012 |
Stepan Dyatkovskiy <[email protected]> |
PR1255: case ranges. IntRange converted from struct to class. So main change everywhere is replacement of ".Low/High" with ".getLow/getHigh()"
llvm-svn: 157884
|
| #
58107dd5 |
| 29-May-2012 |
Stepan Dyatkovskiy <[email protected]> |
ConstantRangesSet renamed to IntegersSubset. CRSBuilder renamed to IntegersSubsetMapping.
llvm-svn: 157612
|
| #
e17b69a3 |
| 28-May-2012 |
Meador Inge <[email protected]> |
PR12696: Attribute bits above 1<<30 are not encoded in bitcode
Attribute bits above 1<<30 are now encoded correctly. Additionally, the encoding/decoding functionality has been hoisted to helper fun
PR12696: Attribute bits above 1<<30 are not encoded in bitcode
Attribute bits above 1<<30 are now encoded correctly. Additionally, the encoding/decoding functionality has been hoisted to helper functions in Attributes.h in an effort to help the encoding/decoding to stay in sync with the Attribute bitcode definitions.
llvm-svn: 157581
show more ...
|
| #
e3e19cbb |
| 28-May-2012 |
Stepan Dyatkovskiy <[email protected]> |
PR1255: Case Ranges Implemented IntItem - the wrapper around APInt. Why not to use APInt item directly right now? 1. It will very difficult to implement case ranges as series of small patches. We got
PR1255: Case Ranges Implemented IntItem - the wrapper around APInt. Why not to use APInt item directly right now? 1. It will very difficult to implement case ranges as series of small patches. We got several large and heavy patches. Each patch will about 90-120 kb. If you replace ConstantInt with APInt in SwitchInst you will need to changes at the same time all Readers,Writers and absolutely all passes that uses SwitchInst. 2. We can implement APInt pool inside and save memory space. E.g. we use several switches that works with 256 bit items (switch on signatures, or strings). We can avoid value duplicates in this case. 3. IntItem can be easyly easily replaced with APInt. 4. Currenly we can interpret IntItem both as ConstantInt and as APInt. It allows to provide SwitchInst methods that works with ConstantInt for non-updated passes.
Why I need it right now? Currently I need to update SimplifyCFG pass (EqualityComparisons). I need to work with APInts directly a lot, so peaces of code ConstantInt *V = ...; if (V->getValue().ugt(AnotherV->getValue()) { ... } will look awful. Much more better this way: IntItem V = ConstantIntVal->getValue(); if (AnotherV < V) { }
Of course any reviews are welcome.
P.S.: I'm also going to rename ConstantRangesSet to IntegersSubset, and CRSBuilder to IntegersSubsetMapping (allows to map individual subsets of integers to the BasicBlocks). Since in future these classes will founded on APInt, it will possible to use them in more generic ways.
llvm-svn: 157576
show more ...
|
| #
3dea4218 |
| 14-May-2012 |
Stepan Dyatkovskiy <[email protected]> |
SwitchInst cosmetics: renamed "Hash" method to "hash"
llvm-svn: 156757
|
|
Revision tags: llvmorg-3.1.0 |
|
| #
0beab5e1 |
| 12-May-2012 |
Stepan Dyatkovskiy <[email protected]> |
Recommited r156374 with critical fixes in BitcodeReader/Writer: Ordinary patch for PR1255. Added new case-ranges orientated methods for adding/removing cases in SwitchInst. After this patch cases wil
Recommited r156374 with critical fixes in BitcodeReader/Writer: Ordinary patch for PR1255. Added new case-ranges orientated methods for adding/removing cases in SwitchInst. After this patch cases will internally representated as ConstantArray-s instead of ConstantInt, externally cases wrapped within the ConstantRangesSet object. Old methods of SwitchInst are also works well, but marked as deprecated. So on this stage we have no side effects except that I added support for case ranges in BitcodeReader/Writer, of course test for Bitcode is also added. Old "switch" format is also supported.
llvm-svn: 156704
show more ...
|
|
Revision tags: llvmorg-3.1.0-rc3 |
|
| #
5eafce5c |
| 08-May-2012 |
Stepan Dyatkovskiy <[email protected]> |
Rejected r156374: Ordinary PR1255 patch. Due to clang-x86_64-debian-fnt buildbot failure.
llvm-svn: 156377
|