| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 214136
|
| |
|
|
|
|
|
|
|
| |
Since we're storing lots of these, save two-pointers per vector with a
custom type rather than using the relatively heavy `SmallVector`.
Part of PR5680.
llvm-svn: 214135
|
| |
|
|
|
|
| |
This should be covered by the Driver's unit tests.
llvm-svn: 214134
|
| |
|
|
|
|
|
| |
This is the last patch to unique the type array of a subroutine type.
This is the paired commit with llvm r214132.
llvm-svn: 214133
|
| |
|
|
|
|
|
|
|
|
|
| |
DITypeArray is an array of DITypeRef, at its creation, we will create
DITypeRef (i.e use the identifier if the type node has an identifier).
This is the last patch to unique the type array of a subroutine type.
rdar://17628609
llvm-svn: 214132
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
We branched 3.5, it's now time to work on 3.6.
This is Sylvestre's patch from [1] plus regenerated configure
file by me, and minus the release notes reset, which Sean
pointed out [2] should happen later.
1. http://reviews.llvm.org/D4660
2. http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20140721/111137.html
llvm-svn: 214131
|
| |
|
|
|
|
| |
standalone mode
llvm-svn: 214130
|
| |
|
|
|
|
| |
been updating configure.
llvm-svn: 214129
|
| |
|
|
|
|
|
| |
Somehow this wasn't being built before (only noticed now since the test
was XFAILed).
llvm-svn: 214128
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Predict and serialize use-list order in bitcode. This makes the option
`-preserve-bc-use-list-order` work *most* of the time, but this is still
experimental.
- Builds a full value-table up front in the writer, sets up a list of
use-list orders to write out, and discards the table. This is a
simpler first step than determining the order from the various
overlapping IDs of values on-the-fly.
- The shuffles stored in the use-list order list have an unnecessarily
large memory footprint.
- `blockaddress` expressions cause functions to be materialized
out-of-order. For now I've ignored this problem, so use-list orders
will be wrong for constants used by functions that have block
addresses taken. There are a couple of ways to fix this, but I
don't have a concrete plan yet.
- When materializing functions lazily, the use-lists for constants
will not be correct. This use case is out of scope: what should the
use-list order be, if it's incomplete?
This is part of PR5680.
llvm-svn: 214125
|
| |
|
|
| |
llvm-svn: 214124
|
| |
|
|
|
|
| |
This is part of PR5680.
llvm-svn: 214123
|
| |
|
|
|
|
| |
This is part of PR5680.
llvm-svn: 214122
|
| |
|
|
|
|
|
| |
A follow-up commit for PR5680 needs to visit functions in reverse order.
Expose iterators to allow that.
llvm-svn: 214121
|
| |
|
|
|
|
|
|
|
|
| |
char-based types from "char" to "signed char". Adjust stdint.h to use
__INTx_TYPE__ directly without prefixing it with signed and to use
__UINTx_TYPE__ for unsigned ones.
The value of __INTx_TYPE__ now matches GCC.
llvm-svn: 214119
|
| |
|
|
| |
llvm-svn: 214117
|
| |
|
|
| |
llvm-svn: 214116
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Typedef DIArray to DITypedArray<DIDescriptor>. Also typedef DITypeArray as
DITypedArray<DITypeRef>.
This is the third of a series of patches to handle type uniqueing of the
type array for a subroutine type.
This commit should have no functionality change.
llvm-svn: 214115
|
| |
|
|
|
|
|
|
| |
Pass target name ("cxxabi") to target_link_libraries(cxx ...) to ensure
that linker is able to locate just-built libc++abi in the build tree,
instead of relying on "-lc++abi" linker flag.
llvm-svn: 214114
|
| |
|
|
|
|
| |
This is the paired commit with llvm r214112.
llvm-svn: 214113
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the second of a series of patches to handle type uniqueing of the
type array for a subroutine type.
For vector and array types, getElements returns the array of subranges, so it
is a better name than getTypeArray. Even for class, struct and enum types,
getElements returns the members, which can be subprograms.
setArrays can set up to two arrays, the second is the templates.
This commit should have no functionality change.
llvm-svn: 214112
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This is the first of a series of patches to handle type uniqueing of the
type array for a subroutine type.
This commit makes sure unspecified_parameter is a DIType to enable converting
the type array for a subroutine type to an array of DITypes.
This commit should have no functionality change. With this commit, we may
change unspecified type to be a DITrivialType instead of a DIType.
llvm-svn: 214111
|
| |
|
|
|
|
|
|
|
|
| |
The new flag, WantFunctionLikeCasts, covers a subset of the keywords
covered by WantTypeSpecifiers that can be used in casts that look like
function calls, e.g. "return long(5);", while excluding the keywords
like "enum" and "const" that would be included when WantTypeSpecifiers
is true but cannot be used in something that looks like a function call.
llvm-svn: 214109
|
| |
|
|
| |
llvm-svn: 214108
|
| |
|
|
|
|
|
|
| |
The gcov compatible code is moved to its own file and
llvm-cov is updated to be a wrapper that always calls
the gcov main function.
llvm-svn: 214107
|
| |
|
|
|
|
| |
All the others use bool, so these should too.
llvm-svn: 214106
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
inspection in the proccess, and shuffle the logging in the DAG combiner
around a bit.
With this it is much easier to follow what the legalizer is doing. It
should even accurately present most of the strange legalization
operations where a single node is replaced by multiple nodes, etc. There
is still some information lost (we log SDNodes not SDValues so we don't
log which result is used for which thing), but I think this is much
closer to a usable system. Notably, this will make it *much* more
apparant when legalization is actually happening inside the combiner, or
when there is a cycle caused by interactions of the legalizer and the
combiner.
The "bug" I fixed here I'm not sure is remotely possible to trigger. We
were only adding one of the nodes in a replacement to the updated set
rather than all of the nodes in the replacement. Realistically, the
worst result of this are nodes not getting back onto the worklist in the
DAG combiner. I doubt it is possible to trigger this today, and
I certainly don't have any ideas about how, but this at least brings the
code into alignment with the principled operation of the routine.
llvm-svn: 214105
|
| |
|
|
|
|
|
| |
The default guess uses i32. This needs an address space argument
to really do the right thing in all cases.
llvm-svn: 214104
|
| |
|
|
| |
llvm-svn: 214103
|
| |
|
|
| |
llvm-svn: 214102
|
| |
|
|
| |
llvm-svn: 214101
|
| |
|
|
| |
llvm-svn: 214100
|
| |
|
|
|
|
| |
Part of <rdar://problem/17688758>
llvm-svn: 214099
|
| |
|
|
|
|
| |
Part of <rdar://problem/17688758>
llvm-svn: 214098
|
| |
|
|
|
|
|
|
|
| |
There is no functional change here.
The idea is to have a similar order and categories of functions that we have
in avxintrin.h.
llvm-svn: 214097
|
| |
|
|
| |
llvm-svn: 214096
|
| |
|
|
| |
llvm-svn: 214095
|
| |
|
|
|
|
|
|
|
| |
This patch creates a simple ProcessWindows process plugin.
The only thing it knows how to do currently is create processes.
Differential Revision: http://reviews.llvm.org/D4681
llvm-svn: 214094
|
| |
|
|
|
|
|
|
|
|
|
| |
Assuming that the user's home directory is at ~ is incorrect on
Windows. This patch delegates the request to LLVM's support
library, which already provides a cross-platform implementation
of this function.
Differential Revision: http://reviews.llvm.org/D4674
llvm-svn: 214093
|
| |
|
|
|
|
|
|
|
|
| |
i386, i486, i486sx, and i686 are all indistinguishable as far as
PE/COFF files are concerned. This patch adds support for all of
these architectures to PlatformWindows.
Differential Revision: http://reviews.llvm.org/D4658
llvm-svn: 214092
|
| |
|
|
| |
llvm-svn: 214091
|
| |
|
|
|
|
|
| |
not auto synthesized in current implementation.
rdar://17774815
llvm-svn: 214090
|
| |
|
|
|
|
|
|
| |
til::SExpr. This is a large patch, with many small changes to pretty printing
and expression lowering to make the new SExpr representation equivalent in
functionality to the old.
llvm-svn: 214089
|
| |
|
|
|
|
| |
done at the correct size. A better solution, IMHO, would be to declare vector<bool>::__bits_per_word as 'size_type', rather than 'unsigned', but that's a possible ABI change.
llvm-svn: 214088
|
| |
|
|
| |
llvm-svn: 214087
|
| |
|
|
|
|
|
|
| |
Added coverage for:
* More than one "off region" in the same file
* An "off region" falling off the end of an included file
llvm-svn: 214086
|
| |
|
|
|
|
| |
The exe-got.test test case is target independent.
llvm-svn: 214085
|
| |
|
|
|
|
| |
Initial patch and tests by Kaushik Sridharan, thank you!
llvm-svn: 214084
|
| |
|
|
| |
llvm-svn: 214082
|
| |
|
|
|
|
|
|
| |
Instructions: KAND{BWDQ}, KANDN{BWDQ}, KOR{BWDQ}, KXOR{BWDQ}, KXNOR{BWDQ}
Reviewed by Elena Demikhovsky <elena.demikhovsky@intel.com>
llvm-svn: 214081
|