| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
llvm-svn: 141039
|
|
|
|
| |
llvm-svn: 141038
|
|
|
|
|
|
| |
functions. // rdar://10186536
llvm-svn: 141037
|
|
|
|
| |
llvm-svn: 141036
|
|
|
|
| |
llvm-svn: 141035
|
|
|
|
|
|
| |
an edge/branching. (ExprEngine should be in charge of generating edges. The checkers should examine the condition and generate PostCondition node if needed.)
llvm-svn: 141034
|
|
|
|
| |
llvm-svn: 141033
|
|
|
|
| |
llvm-svn: 141032
|
|
|
|
|
|
|
|
|
|
|
| |
This code will replace the version in ARMAsmPrinter.cpp. It creates a new
machine basic block, which is the dispatch for the return from a longjmp
call. It then shoves the address of that machine basic block into the correct
place in the function context so that the EH runtime will jump to it directly
instead of having to go through a compare-and-jump-to-the-dispatch bit. This
should be more efficient in the common case.
llvm-svn: 141031
|
|
|
|
| |
llvm-svn: 141030
|
|
|
|
| |
llvm-svn: 141029
|
|
|
|
| |
llvm-svn: 141028
|
|
|
|
|
|
|
| |
- Remove unused FindUndefExpr::ProgramStateManager.
- The Condition parameter of the callback is the terminator of the block, no need to retrieve it again.
llvm-svn: 141027
|
|
|
|
|
|
| |
the need for returning a std::pair.
llvm-svn: 141026
|
|
|
|
| |
llvm-svn: 141025
|
|
|
|
| |
llvm-svn: 141024
|
|
|
|
| |
llvm-svn: 141023
|
|
|
|
| |
llvm-svn: 141022
|
|
|
|
| |
llvm-svn: 141021
|
|
|
|
|
|
|
| |
It's documented as a separate instruction to line up with the Thumb1
encodings, for which it really is a distinct instruction encoding.
llvm-svn: 141020
|
|
|
|
|
|
| |
registers.
llvm-svn: 141019
|
|
|
|
| |
llvm-svn: 141018
|
|
|
|
| |
llvm-svn: 141017
|
|
|
|
|
|
|
| |
registers and 64-bit HI and LO registers. Fix encoding of the 32-bit versions
of the instructions.
llvm-svn: 141015
|
|
|
|
| |
llvm-svn: 141013
|
|
|
|
| |
llvm-svn: 141012
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
is designed to allow the detection to record more rich information about
the installation than just a single path.
Mostly, the functionality remains the same. This is primarily
a factoring change. However, the new factoring immediately fixes one
issue where on ubuntu we didn't walk up enough layers to reach the
parent lib path. I'll have a test tree for that once I finish making the
Ubuntu tree work reasonably.
llvm-svn: 141011
|
|
|
|
| |
llvm-svn: 141010
|
|
|
|
|
|
| |
not bind to a temporary. Fixes //rdar://10188258
llvm-svn: 141009
|
|
|
|
| |
llvm-svn: 141008
|
|
|
|
|
|
| |
disassembler. Includes feature flag checking, but no instrinsic support. Fixes PR10832, PR11026 and PR11027.
llvm-svn: 141007
|
|
|
|
|
|
| |
sync between DiagnosticsEngine and PartialDiagnostic.
llvm-svn: 141006
|
|
|
|
| |
llvm-svn: 141005
|
|
|
|
| |
llvm-svn: 141004
|
|
|
|
| |
llvm-svn: 141003
|
|
|
|
| |
llvm-svn: 141002
|
|
|
|
| |
llvm-svn: 141001
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
configuration, although the test still stubs out more directories than
are necessary or common in order to exercise all of the lookup paths
observed with upstream GCC.
This finishes testing the distribution-independent and
GCC-installation-independent parts of the library path search logic.
More testing is still needed for the triple detection, GCC-installation
detection, and handling distributions with unusual configurations.
llvm-svn: 141000
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
enabled for debian hosts, which is quite odd. I think all restriction on
when Clang attempts to use a multilib installation should go away. Clang
is fundamentally a cross compiler. It behaves more like GCC when built
as a cross compiler, and so it should just use multilib installs when
they are present on the system. However, there is a very specific
exemption for Exherbo, which I can't test on, so I'm leaving that in
place.
With this, check in a generic test tree for multilib on a 32-bit host.
This stubs out many directories that most distributions don't use but
that uptsream GCC supports. This is intended to be an agnostic test that
the driver behaves properly compared with the GCC driver it aims for
compatibility with.
Also, fix a bug in the driver that this testing exposed (see!) where it
was incorrectly testing the target architecture rather than the host
architecture.
If anyone is having trouble with the tree-structure stubs I'm creating
to test this, let me know and I can revisit the design. I chose this
over (for example) a tar-ball in order to make tests run faster at the
small, hopefully amortized VCS cost.
llvm-svn: 140999
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
include *any* path on crtbegin.o unless we actually find such a file via
one of the search paths. We still strictly check the search paths right
after this, so we'll catch any issues there.
The reason for this is that the driver does some normalization of the
path on the actual object file, and this changes the textual format of
the string on Windows. It no longer matches the textual format of the
sysroot flag.
llvm-svn: 140998
|
|
|
|
|
|
| |
registers xmm8-xmm15 outside 64-bit mode.
llvm-svn: 140997
|
|
|
|
|
|
|
| |
any distros that use this, building a multilib GCC from mainline will
install linker scripts here.
llvm-svn: 140996
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This requires fixing a latent bug -- if we used the default host triple
instead of an autodetected triple to locate GCC's installation, we
didn't go back and fix the GCC triple. Correct that with a pile of
hacks. This entire routine needs a major refactoring which I'm saving
for a subsequent commit. Essentially, the detection of the GCC triple
should be hoisted into the same routine as we locate the GCC
installation: the first is intrinsically tied to the latter. Then the
routine will just return the triple and base directory.
Also start to bring the rest of the library search path logic under
test, including locating crtbegin.o. Still need to test the multilib and
other behaviors, but there are also bugs in the way of that.
llvm-svn: 140995
|
|
|
|
| |
llvm-svn: 140994
|
|
|
|
| |
llvm-svn: 140993
|
|
|
|
|
|
| |
logic by David Meyer revealed this bug.
llvm-svn: 140992
|
|
|
|
| |
llvm-svn: 140991
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is still very much a WIP, but sysroot was completely broken before
this so we are moving closer to correctness.
The crux of this is that 'ld' (on Linux, the only place I'm touching
here) doesn't apply the sysroot to any flags given to it. Instead, the
driver must translate all the paths it adds to the link step with the
system root. This is easily observed by building a GCC that supports
sysroot, and checking its driver output.
This patch just fixes the non-multilib library search paths. We should
also use this in many other places, but first things first.
This also allows us to make the Linux 'ld' test independent of the host
system. This in turn will allow me to check in test tree configurations
based on various different distro's configuration. Again, WIP.
llvm-svn: 140990
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of always storing all source locations for the selector identifiers
we check whether all the identifiers are in a "standard" position; "standard" position is
-Immediately before the arguments: -(id)first:(int)x second:(int)y;
-With a space between the arguments: -(id)first: (int)x second: (int)y;
-For nullary selectors, immediately before ';': -(void)release;
In such cases we infer the locations instead of storing them.
llvm-svn: 140989
|
|
|
|
| |
llvm-svn: 140988
|