| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
| |
Reviewers: Duncan P. N. Exon Smith
llvm-svn: 242358
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The jump table info is serialized using a YAML mapping that contains its kind
and a YAML sequence of jump table entries. A jump table entry is a YAML mapping
that has an ID and an inline YAML sequence of machine basic block references.
The testcase 'CodeGen/MIR/X86/jump-table-info.mir' doesn't have any instructions
because one of them contains a jump table index operand. The jump table index
operands will be serialized in a follow up patch, and the appropriate
instructions will be added to this testcase.
Reviewers: Duncan P. N. Exon Smith
llvm-svn: 242357
|
| |
|
|
|
|
| |
This isn't thorough, but should serve as a sanity check.
llvm-svn: 242356
|
| |
|
|
|
|
| |
The member to be removed is LoopInfo *LI.
llvm-svn: 242355
|
| |
|
|
|
|
|
| |
We were already doing the right thing for short file names, but not long
ones.
llvm-svn: 242354
|
| |
|
|
| |
llvm-svn: 242353
|
| |
|
|
|
|
|
|
|
|
| |
only in the normal stop reply packets using the new "jthreads" key value pair.
This allows stepping operations that don't ever do a public stop to get all the info they need without having to send a jThreadsInfo packet since those tend to be large.
This patch will be followed by a patch that will detect when we do a public stop, and when that happens we will send a jThreadsInfo packet at that time to get all expedited registers and memory.
llvm-svn: 242352
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: eugenis, kcc
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D11189
llvm-svn: 242351
|
| |
|
|
| |
llvm-svn: 242350
|
| |
|
|
|
|
|
|
| |
This new wrapper pass is useful when we want to do branch probability analysis conditionally (e.g. only in PGO mode) but don't want to add one more pass dependence.
http://reviews.llvm.org/D11241
llvm-svn: 242349
|
| |
|
|
| |
llvm-svn: 242348
|
| |
|
|
|
|
|
| |
We were storing both the path and the file name, which was redundant
and easy to get confused up with.
llvm-svn: 242347
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We were still using the Unix response file tokenizer for all driver
modes. This was difficult to get right in the beginning because there is
a circular dependency. The Driver class also can't officially determine
its mode until it can see all possible --driver-mode= flags, and those
flags could come from the response file.
Now we use the Windows parsing algorithm if the program name looks like
clang-cl, or if the --driver-mode=cl flag is present on the main command
line.
Fixes PR23709.
Reviewers: hans
Differential Revision: http://reviews.llvm.org/D11229
llvm-svn: 242346
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
checking HeaderTerm instruction type
Summary:
This is a trivial code change with no functionality effect.
When LoopUnswitch determines trivial unswitch condition, it checks whether the loop header's terminator instruction is a branch instruction or switch instruction since trivial unswitch condition can only apply to these two instruction types. The current code does not fail the check directly on other instruction types, but check the nullness of LoopExitBB variable instead. The added else clause makes the check fail immediately on other instruction types and makes the code more obvious.
Reviewers: reames
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D11239
llvm-svn: 242345
|
| |
|
|
|
|
|
|
| |
This one I accidentally missed last time because I confused it with
the lldbUtility library. After this, all makefile libraries should
have the same names as their CMake counterparts.
llvm-svn: 242344
|
| |
|
|
| |
llvm-svn: 242343
|
| |
|
|
|
|
|
|
|
| |
If a symbol is exported as /export:foo, and foo is resolved as a
mangled name (_foo@<number> or ?foo@@Y...), that mangled name should
be written to the export table. Previously, we wrote the original
name to the export table.
llvm-svn: 242342
|
| |
|
|
|
|
|
|
|
|
| |
On some systems (e.g. Mac OS X), sed will add a newline to the end of
the output if there wasn't one already. This would cause false
cmp errors since the .o file from Phase 2 was passed through sed and
the one from Phase 3 wasn't. Work around this by passing both through
sed.
llvm-svn: 242341
|
| |
|
|
|
|
|
|
|
|
| |
getRegAllocationHints()
Pass a const reference to LiveRegMatrix to getRegAllocationHints()
because some targets can prodive better hints if they can test whether a
physreg has been used for register allocation yet.
llvm-svn: 242340
|
| |
|
|
|
|
|
|
|
| |
This commit serializes the references to the named LLVM alloca instructions from
the stack objects in the machine frame info. This commit adds a field 'Name' to
the struct 'yaml::MachineStackObject'. This new field is used to store the name
of the alloca instruction when the alloca is present and when it has a name.
llvm-svn: 242339
|
| |
|
|
|
|
|
|
|
|
|
| |
emit debug info, according to the preferences of the different
debuggers used on various targets.
Darwin and FreeBSD default to tuning for LLDB; PS4 defaults to tuning for
the SCE (Sony Computer Entertainment) debugger. All others default to GDB.
Differential Revision: http://reviews.llvm.org/D8506
llvm-svn: 242338
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Self-referential constants containing references to a merged function
no longer cause the MergeFunctions pass to infinite loop. Also adds a
reproduction IR which would otherwise fail, which was isolated from a similar
issue in Chromium.
Author: jrkoenig
Reviewers: nlewycky, jfb
Subscribers: llvm-commits, nlewycky, jfb
Differential Revision: http://reviews.llvm.org/D11208
llvm-svn: 242337
|
| |
|
|
| |
llvm-svn: 242334
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: clayborg, sivachandra
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D11202
llvm-svn: 242332
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It retains the possibility to use the autoconf build with a
command-line option ('-use-autoconf'), and uses that by default on Darwin since
compiler-rt requires it on that platform.
This commit also removes the "Release-64" flavour and related logic. The script
would previously do two builds unless the '-no-64bit' flag was passed, but on
my machine and from those I asked this always ended up producing two 64-bit builds,
causing much confusion.
It also removes the -build-triple option, which caused the --build= flag to
get passed to ./configure. This was presumably intended for cross-compiling,
but none of the release testers use it. If someone does want to pass it,
they can use '-configure-flags --build=foo' instead.
Differential Revision: http://reviews.llvm.org/D10715
llvm-svn: 242331
|
| |
|
|
|
|
| |
While at it, test that we can add to a thin archive.
llvm-svn: 242330
|
| |
|
|
| |
llvm-svn: 242329
|
| |
|
|
|
|
| |
tooling lib, an analyzer plugin is loaded, but the runtime linker fails to link.
llvm-svn: 242326
|
| |
|
|
| |
llvm-svn: 242323
|
| |
|
|
|
|
|
|
| |
pointers to references.
http://reviews.llvm.org/D11196
llvm-svn: 242322
|
| |
|
|
| |
llvm-svn: 242321
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This patch allows phi nodes like
%x = phi [ %incptr, ... ] [ %var, ... ]
%incptr = getelementptr %x, 1
to be analyzed by BasicAliasAnalysis.
In aliasPHI, we can detect incoming values that are recursive GEPs with a
constant offset. Instead of trying to analyze a recursive GEP (and failing),
we now ignore it and instead set the size of the memory referenced by
the PHINode to UnknownSize. This represents all the possible memory
locations the pointer represented by the PHINode could be advanced to
by the GEP.
For now, this new behavior is turned off by default to allow debugging of
performance degradations seen with SPEC/x86 and Hexagon benchmarks.
The flag -basicaa-recphi turns it on.
Reviewers: hfinkel, sanjoy
Subscribers: tobiasvk_caf, sanjoy, llvm-commits
Differential Revision: http://reviews.llvm.org/D10368
llvm-svn: 242320
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The accept4 syscall is missing on older ARM Android kernels, and the accept()
call is implemented with the accept4 syscall, so we'll need to call the accept
syscall directly.
Reviewers: vharron, tberghammer, labath
Subscribers: ovyalov, chaoren, labath, tberghammer, aemerson, lldb-commits
Differential Revision: http://reviews.llvm.org/D10887
llvm-svn: 242319
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: vharron, tberghammer
Subscribers: chaoren, labath, tberghammer, lldb-commits
Differential Revision: http://reviews.llvm.org/D10858
llvm-svn: 242318
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This helps with freeform documentation styles, where otherwise code like
enum class E {
E1, // D1
E2 // D2
};
would result in D1 being associated with E2. To properly associate E1
with D1 and E2 with D2, this patch allows all raw comments C such that
C.isParseAllComments() to participate in trailing comment checks inside
getRawCommentForDeclNoCache. This takes care of linking the intended
documentation with the intended decls. There remains an issue with code
like:
foo(); // DN
int x;
To prevent DN from being associated with x, this patch adds a new test
on preceding-line comments C (where C.isParseAllComments() and also
C's kind is RCK_OrdinaryBCPL or RCK_OrdinaryC) that checks whether C
is the first non-whitespace thing on C's starting line.
Patch from Luke Zarko <zarko@google.com>, D11069 reviewed by rsmith.
llvm-svn: 242317
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D11177
llvm-svn: 242316
|
| |
|
|
|
|
|
| |
The intent is to test Clang codegen at -O1, and not the LLVM
optimization pipeline.
llvm-svn: 242315
|
| |
|
|
|
|
|
| |
previously requiring shell-preserves-root did not, so do not
require anything.
llvm-svn: 242314
|
| |
|
|
|
|
|
|
|
|
|
| |
Revision 224297 modified the behavior of vec_sld for little endian so
that LLVM will generate the correct corresponding vsldoi instruction.
I neglected to update the existing tests, which continued to pass
because they were not specific enough. This patch adds enough
specificity to the tests to make them useful for BE and LE testing of
vec_sld.
llvm-svn: 242313
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
is true on MSYS bash although this requires: used to disable tests on MSYS bash.
Nevertheless, all tests requiring shell-preserves-root do pass except for
Driver/darwin-sdkroot.c. It will require a patch, either by disabling it on
Windows or by fixing shell-preserves-root to really be true only on MSYS
and making darwin-sdkroot.c its only user.
In any case, all other tests requiring shell-preserves-root do not really require
it so I'm replacing REQUIRES: shell-preserves-root with REQUIRES: shell in two
tests first.
llvm-svn: 242312
|
| |
|
|
|
|
|
|
|
|
| |
Likely broke compilation on ARM:
http://lab.llvm.org:8011/builders/clang-native-arm-lnt/builds/13054
This reverts commit 0b7824464fbe3d3f386e2d4aef6a431422709e53.
llvm-svn: 242311
|
| |
|
|
|
|
|
|
|
|
| |
Likely broke compilation on ARM:
http://lab.llvm.org:8011/builders/clang-native-arm-lnt/builds/13054
This reverts commit 131ce4a838c081516cbfed039fc986b33e3979d6.
llvm-svn: 242310
|
| |
|
|
| |
llvm-svn: 242309
|
| |
|
|
|
|
| |
This is a test commit (one blank line deleted).
llvm-svn: 242308
|
| |
|
|
|
|
|
|
|
|
| |
MSVC 4.2 didn't have bool as a builtin type but MSVC 5.0 does. When
they added it, they added a macro (__BOOL_DEFINED) which allows build
scripts and the like to know if they should provide their own bool.
Clang always supports bool as a builtin type in C++ mode.
llvm-svn: 242307
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This fixes an off-by-one bug in CMICmdCmdDataInfoLine::Acknowledge. Given:
LineEntry: \[0x0000000100000f37-0x0000000100000f45\): /path/to/file:123:1
-data-info-line would report the line as 12, omitting the last digit.
Reviewed by: ki.stfu, abidh
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D11209
llvm-svn: 242306
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This commit integrates MainLoop into NativeProcessLinux. By registering a SIGCHLD handler with
the llgs main loop, we can get rid of the special monitor thread in NPL, which saves as a lot of
thread ping-pong when responding to client requests (e.g. qThreadInfo processing time has been
reduced by about 40%). It also makes the code simpler, IMHO.
Reviewers: ovyalov, clayborg, tberghammer, chaoren
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D11150
llvm-svn: 242305
|
| |
|
|
| |
llvm-svn: 242304
|
| |
|
|
|
|
| |
variable.
llvm-svn: 242303
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a necessary prerequisite for bootstrapping the emission
of debug info inside modules.
- Adds a FlagExternalTypeRef to DICompositeType.
External types must have a unique identifier.
- External type references are emitted using a forward declaration
with a DW_AT_signature([DW_FORM_ref_sig8]) based on the UID.
http://reviews.llvm.org/D9612
llvm-svn: 242302
|