| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
| |
In fact, symbolization is now expected to work only on Linux and
FreeBSD/NetBSD, where we have dl_iterate_phdr and can learn the
main executable name without argv0 (it will be possible on BSD systems
after http://reviews.llvm.org/D5693 lands). #ifdef-out the code for
all the rest Unix systems.
Reviewed in http://reviews.llvm.org/D5610
llvm-svn: 219534
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Currently this only functions to match simple cases
where ds_read2_* / ds_write2_* instructions can be used.
In the future it might match some of the other weird
load patterns, such as direct to LDS loads.
Currently enabled only with a subtarget feature to enable
easier testing.
llvm-svn: 219533
|
| |
|
|
|
|
|
|
|
|
|
|
| |
It also makes it more aggressive in querying range information by
adding a call to isKnownPredicateWithRanges to
isLoopBackedgeGuardedByCond and isLoopEntryGuardedByCond.
phabricator: http://reviews.llvm.org/D5638
Reviewed by: atrick, hfinkel
llvm-svn: 219532
|
| |
|
|
|
|
|
|
|
| |
is over a subset of condition codes.
This fixes the -Werror build which warns about use of uninitialized
variables in the default case.
llvm-svn: 219531
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Expand SelectCmp to handle floating point compare
Test Plan:
fpcmpa.ll
run 4 flavors of test-suite, mips32 r1/r2 O0/O2
Reviewers: dsanders
Reviewed By: dsanders
Subscribers: llvm-commits, rfuhler
Differential Revision: http://reviews.llvm.org/D5567
llvm-svn: 219530
|
| |
|
|
|
|
|
|
|
| |
Includes Python bindings.
Reviewed in http://reviews.llvm.org/D5621
Patch by Rob Springer
llvm-svn: 219529
|
| |
|
|
| |
llvm-svn: 219528
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This was previously only used when explicitly requested with a command line
option because it had to work with some old versions of the linker when it
was first introduced. That is ancient history now, and it should be safe to
use the correct option even when using the IPHONEOS_DEPLOYMENT_TARGET
environment variable to specify that the target is the iOS simulator.
Besides updating the test for this, I also added a few more tests for the
iOS linker options.
llvm-svn: 219527
|
| |
|
|
| |
llvm-svn: 219526
|
| |
|
|
|
|
| |
This bug break compilation with precompiled headers and predefined expressions in dependent context.
llvm-svn: 219525
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
It's possible to construct cases where the first field we are trying to
copy is in the middle of an IR field. In some complicated cases, we
would fail to use an appropriate offset inside the object. Earlier
builds of clang seemed to miscompile the code by copying an insufficient
number of bytes. Up until now, we would assert: the copying offset was
insufficiently aligned.
This fixes PR21232.
llvm-svn: 219524
|
| |
|
|
|
|
|
|
|
|
|
| |
instructions within a function, lead to the function itself."
This invariant is violated (& the assertions fire) on some Objective C++
in the test-suite. Reverting while I investigate.
This reverts commit r219215.
llvm-svn: 219523
|
| |
|
|
|
|
|
|
| |
initializers, and captured VLA types so that we can
answer questions like "is this a bit-field" without
looking at the enclosing DeclContext. NFC.
llvm-svn: 219522
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I was quiet surprised to find this feature being used. Fortunately the uses
I found look fairly simple. In fact, they are just a very verbose version
of the regular ar commands.
Start implementing it then by parsing the script and setting the command
variables as if we had a regular command line.
This patch adds just enough support to create an empty archive and do a bit
of error checking. In followup patches I will implement at least addmod
and addlib.
From the description in the manual, even the more general case should not
be too hard to implement if needed. The features that don't map 1:1 to
the simple command line are
* Reading from multiple archives.
* Creating multiple archives.
llvm-svn: 219521
|
| |
|
|
|
|
| |
This accounts for the case where a dlopen() call fails when loading a library with a missing dependency.
llvm-svn: 219520
|
| |
|
|
| |
llvm-svn: 219519
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: implement SelectCmp (integer compare ) in mips fast-isel
Test Plan:
icmpa.ll
also ran 4 test-suite flavors mips32 r1/r2 O0/O2
Reviewers: dsanders
Reviewed By: dsanders
Subscribers: llvm-commits, rfuhler, mcrosier
Differential Revision: http://reviews.llvm.org/D5566
llvm-svn: 219518
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ScalarEvolution in the presence of multiple exits. Previously all
loops exits had to have identical counts for a loop trip count to be
considered computable. This pessimization was implemented by calling
getBackedgeTakenCount(L) rather than getExitCount(L, ExitingBlock)
inside of ScalarEvolution::getSmallConstantTripCount() (see the FIXME
in the comments of that function). The pessimization was added to fix
a corner case involving undefined behavior (pr/16130). This patch more
precisely handles the undefined behavior case allowing the pessimization
to be removed.
ControlsExit replaces IsSubExpr to more precisely track the case where
undefined behavior is expected to occur. Because undefined behavior is
tracked more precisely we can remove MustExit from ExitLimit. MustExit
was used to track the case where the limit was computed potentially
assuming undefined behavior even if undefined behavior didn't necessarily
occur.
llvm-svn: 219517
|
| |
|
|
| |
llvm-svn: 219516
|
| |
|
|
|
|
| |
Per Hal Finkel's review, improving typability of some variable names.
llvm-svn: 219515
|
| |
|
|
|
|
| |
Per Hal Finkel's review, improving typability of some variable names.
llvm-svn: 219514
|
| |
|
|
|
|
|
| |
I'm going to fix up FileCheck to better handle things like this soon,
but for now let's just unblock the Windows people.
llvm-svn: 219513
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes a logic error in the MachineScheduler found by Steve Montgomery (and
confirmed by Andy). This has gone unfixed for months because the fix has been
found to introduce some small performance regressions. However, Andy has
recommended that, at this point, we fix this to avoid further dependence on the
incorrect behavior (and then follow-up separately on any regressions), and I
agree.
Fixes PR18883.
llvm-svn: 219512
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Add the ability to convert 64 or 32 bit floating point values to integer in mips fast-isel
Test Plan:
fpintconv.ll
ran 4 flavors of test-suite with no errors, misp32 r1/r2 O0/O2
Reviewers: dsanders
Reviewed By: dsanders
Subscribers: llvm-commits, rfuhler, mcrosier
Differential Revision: http://reviews.llvm.org/D5562
llvm-svn: 219511
|
| |
|
|
| |
llvm-svn: 219510
|
| |
|
|
| |
llvm-svn: 219509
|
| |
|
|
|
|
| |
This helps read the comments and understand the code in a natural order
llvm-svn: 219508
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This change depends on the ApplePropertyString helper that I sent spearately.
Not sure how you want this tested: as a tool test by adding a binary to dump, or as an llvm test starting from an IR file?
Reviewers: dblaikie, samsonov
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D5689
llvm-svn: 219507
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
DW_AT_specification and DW_AT_abstract_origin resolving was only performed
on subroutine DIEs because it used the getSubroutineName method. Introduce
a more generic getName() and use it to dump the reference attributes.
Testcases have been updated to check the printed names instead of the offsets
except when the name could be ambiguous.
Reviewers: dblaikie, samsonov
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D5625
llvm-svn: 219506
|
| |
|
|
| |
llvm-svn: 219505
|
| |
|
|
| |
llvm-svn: 219504
|
| |
|
|
|
|
|
|
|
|
|
| |
We restricted the new access functions to be a subset of the old one
because we want to keep the alignment, however if the alignment is
"not special", thus the default for the type, we can allow any access.
Differential Revision: http://reviews.llvm.org/D5680
llvm-svn: 219503
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current VSX feature for PowerPC specifies availability of the VSX
instructions added with the 2.06 architecture version. With 2.07, the
architecture adds new instructions to both the Category:Vector and
Category:VSX instruction sets. Additionally, unaligned vector storage
operations have improved performance.
This patch adds a feature to provide access to the new instructions
and performance capabilities of Power8. For compatibility with GCC,
the feature is controlled via a new -mpower8-vector switch, and the
feature causes the __POWER8_VECTOR__ builtin define to be generated by
the preprocessor.
There is a companion patch for llvm being committed at the same time.
llvm-svn: 219502
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current VSX feature for PowerPC specifies availability of the VSX
instructions added with the 2.06 architecture version. With 2.07, the
architecture adds new instructions to both the Category:Vector and
Category:VSX instruction sets. Additionally, unaligned vector storage
operations have improved performance.
This patch adds a feature to provide access to the new instructions
and performance capabilities of Power8. For compatibility with GCC,
the feature is controlled via a new -mpower8-vector switch, and the
feature causes the __POWER8_VECTOR__ builtin define to be generated by
the preprocessor.
There is a companion patch for cfe being committed at the same time.
llvm-svn: 219501
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5084
llvm-svn: 219500
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5661
llvm-svn: 219499
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5062
llvm-svn: 219498
|
| |
|
|
|
|
| |
Also remove some unnecessary virtual keywords. NFC.
llvm-svn: 219497
|
| |
|
|
|
|
|
|
|
|
|
| |
cmake/config-ix.cmake: Enabled building of asan for mipsel arch
test/asan/CMakeLists.txt: Enabled testing of asan for mipsel
Patch by Kumar Sukhani
Differential Revision: http://reviews.llvm.org/D5615
llvm-svn: 219496
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5049
llvm-svn: 219495
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5045
llvm-svn: 219494
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5027
llvm-svn: 219493
|
| |
|
|
| |
llvm-svn: 219492
|
| |
|
|
| |
llvm-svn: 219491
|
| |
|
|
|
|
| |
Moved CGOpenMPRegionInfo from CGOpenMPRuntime.h to CGOpenMPRuntime.cpp file and reworked the code for this change. Also added processing of ThreadID variable passed as an argument in outlined functions in parallel and task directives.
llvm-svn: 219490
|
| |
|
|
| |
llvm-svn: 219488
|
| |
|
|
|
|
| |
Saves a couple of expensive deep copies. NFC.
llvm-svn: 219487
|
| |
|
|
|
|
| |
This patch makes class OMPPrivateScope a common class for all private variables. Reworked processing of firstprivate variables (now it is based on OMPPrivateScope too).
llvm-svn: 219486
|
| |
|
|
|
|
| |
by value having cleared the sign bit.
llvm-svn: 219485
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is dangerous for numerous reasons. The primary risk here is with
floating point or double types where if the wrong header files are
included in a strange order this can implicitly convert to integers and
then call the C abs function on the integers. There is a secondary risk
that even impacts integers where if the namespace the code is written in
ever defines an abs overload for types within that namespace the global
abs will be hidden. The correct form is to call std::abs or write 'using
std::abs' for builtin types (and only the latter is correct in any
generic context).
I've also added the requisite header to be a bit more explicit here.
llvm-svn: 219484
|