| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 183843
|
| |
|
|
|
|
| |
No functionality change.
llvm-svn: 183842
|
| |
|
|
|
|
|
|
| |
Allows returning a PPC::Predicate from a function with a no-predicate
value possible. Preparatory patch for fast-isel on PPC64 ELF. No
behavioral change intended.
llvm-svn: 183841
|
| |
|
|
| |
llvm-svn: 183840
|
| |
|
|
| |
llvm-svn: 183839
|
| |
|
|
| |
llvm-svn: 183838
|
| |
|
|
| |
llvm-svn: 183837
|
| |
|
|
| |
llvm-svn: 183836
|
| |
|
|
| |
llvm-svn: 183835
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I've been comparing the object file output of LLVM's integrated
assembler against the external assembler on PowerPC, and one
area where differences still remain are in DWARF sections.
In particular, the GNU assembler generates .debug_frame and
.debug_line sections using a code alignment factor of 4, since
all PowerPC instructions have size 4 and must be aligned to a
multiple of 4. However, current MC code hard-codes a code
alignment factor of 1.
This patch changes this by adding a "minimum instruction alignment"
data element to MCAsmInfo and using this as code alignment factor.
This requires passing a MCContext into MCDwarfLineAddr::Encode
and MCDwarfLineAddr::EncodeAdvanceLoc. Note that one caller,
MCDwarfLineAddr::Write, didn't actually have that information
available. However, it turns out that this routine is in fact
never used in the whole code base, so the patch simply removes
it. If it turns out to be needed again at a later time, it
could be re-added with an updated interface.
llvm-svn: 183834
|
| |
|
|
| |
llvm-svn: 183833
|
| |
|
|
|
|
| |
and exec.
llvm-svn: 183832
|
| |
|
|
| |
llvm-svn: 183831
|
| |
|
|
|
|
|
|
|
| |
`typeinfo for llvm::cl::GenericOptionValue').
Remove an "anchor" method for an abstract class. (This does not
increase the number of vtables.)
llvm-svn: 183830
|
| |
|
|
|
|
|
|
|
|
|
| |
A couple of old test cases in test/MC/PowerPC were still using
LLVM IR. Now that we have a working assembler, we can move
them to assembler tests instead:
ppc64-initial-cfa.ll
ppc64-relocs-01.ll
ppc64-tls-relocs-01.ll
llvm-svn: 183829
|
| |
|
|
| |
llvm-svn: 183828
|
| |
|
|
| |
llvm-svn: 183827
|
| |
|
|
| |
llvm-svn: 183826
|
| |
|
|
| |
llvm-svn: 183825
|
| |
|
|
|
|
| |
LLVMX86CompilationCallback2, called from inline asm.
llvm-svn: 183824
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
"register" functions for the checker were caching the checker objects in a
static variable. This caused problems when the function is called with a
different CheckerManager.
Reviewers: klimek
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D955
llvm-svn: 183823
|
| |
|
|
|
|
|
| |
If you type help command <word> <word> <word> <missingSubCommand> (e.g. help script import or help type summary fake), you will get help on the deepest matched command word (i.e. script or type summary in the examples)
Also, reworked the logic for commands to produce their help to make it more object-oriented
llvm-svn: 183822
|
| |
|
|
|
|
| |
Fixes <rdar://problem/11224126> and PR12790.
llvm-svn: 183821
|
| |
|
|
|
|
|
|
|
|
| |
325,000 breakpoints for running "breakpoint set --func-regex ." on lldb itself (after hitting a breakpoint at main so that LLDB.framework is loaded) used to take up to an hour to set, now we are down under a minute. With warm file caches, we are at 40 seconds, and that is with setting 325,000 breakpoint through the GDB remote API. Linux and the native debuggers might be faster. I haven't timed what how much is debug info parsing and how much is the protocol traffic to/from GDB remote.
That there were many performance issues. Most of them were due to storing breakpoints in the wrong data structures, or using the wrong iterators to traverse the lists, traversing the lists in inefficient ways, and not optimizing certain function name lookups/symbol merges correctly.
Debugging after that is also now very efficient. There were issues with replacing the breakpoint opcodes in memory that was read, and those routines were also fixed.
llvm-svn: 183820
|
| |
|
|
| |
llvm-svn: 183819
|
| |
|
|
|
|
| |
Make the error message here more interesting for the user
llvm-svn: 183818
|
| |
|
|
|
|
| |
Segfaults.
llvm-svn: 183817
|
| |
|
|
|
|
| |
_end.
llvm-svn: 183816
|
| |
|
|
|
|
| |
space
llvm-svn: 183815
|
| |
|
|
| |
llvm-svn: 183814
|
| |
|
|
|
|
|
|
| |
AVX vectors when AVX is turned on.
Fixes <rdar://problem/10513611>.
llvm-svn: 183813
|
| |
|
|
|
|
|
| |
- skip the attach cases in TestRegisters.py -- caused slowness/sigabrt
- fixed log file removal function (in case test is run with -# flag)
llvm-svn: 183812
|
| |
|
|
|
|
|
|
|
|
| |
This test case was a "sanity check"/"breathing" test case at first, but
is really fragile, which impairs changes to yaml2obj.
`test/Object/yaml2obj-elf-bits-endian.test` is much more robust and
serves as an adequate sanity check.
llvm-svn: 183811
|
| |
|
|
|
|
| |
This slipped in during a hasty renaming.
llvm-svn: 183810
|
| |
|
|
|
|
|
| |
match the comments and what the instruction actually does. Noticed
on inspection.
llvm-svn: 183809
|
| |
|
|
| |
llvm-svn: 183808
|
| |
|
|
| |
llvm-svn: 183807
|
| |
|
|
| |
llvm-svn: 183806
|
| |
|
|
|
|
|
|
| |
- exposing new accessors: formats/format, ..., that allow you to iterate over all formatters
e.g. sys_category = lldb.debugger.GetCategory("system").summary['char *']
- ensuring that C++-based synthetic children provider can at least print their description accurately, if nothing else
llvm-svn: 183805
|
| |
|
|
| |
llvm-svn: 183804
|
| |
|
|
| |
llvm-svn: 183803
|
| |
|
|
|
|
|
|
|
| |
The pass emits a call to sqrt that has attribute "read-none". This call will be
converted to an ISD::FSQRT node during DAG construction, which will turn into
a mips native sqrt instruction.
llvm-svn: 183802
|
| |
|
|
|
|
|
| |
Most clients have already been moved from Path V1 to V2. The ones using V1
now include PathV1.h explicitly.
llvm-svn: 183801
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a region header is part of a loop, then all entering edges of this region
should not come from the loop but outside the region. Otherwise, the loop may be
only partially part of the region, which would cause troubles in handling
induction variables.
Currently, we can only model induction variables that are either fully part of
the scop (loop induction variable) or induction variables that are scop-
invariant (parameter). A loop that is only partially part of the
scop causes troubles, as there is no good way to handle the induction
variable in the independent blocks pass.
Contributed-by: Star Tan <tanmx_star@yeah.net>
llvm-svn: 183800
|
| |
|
|
| |
llvm-svn: 183799
|
| |
|
|
|
|
|
| |
to discard regions with invalid loops before going through the contents of the
basic blocks
llvm-svn: 183798
|
| |
|
|
|
|
|
| |
to discard regions with invalid CFG before going through the contents of the
basic blocks
llvm-svn: 183797
|
| |
|
|
|
|
| |
I am about to move PathV2.h to Path.h.
llvm-svn: 183796
|
| |
|
|
|
|
| |
I am about to move PathV2.h to Path.h.
llvm-svn: 183795
|
| |
|
|
|
|
|
|
|
|
|
| |
Sign- and zero-extension folding was slightly incorrect because it wasn't checking that the shift on extensions was zero. Further, I recently added AND rd, rn, #255 as a form of 8-bit zero extension, and failed to add the folding code for it.
This patch fixes both issues.
This patch fixes both, and the test should remain the same:
test/CodeGen/ARM/fast-isel-fold.ll
llvm-svn: 183794
|