Michael Sartain [Wed, 7 Aug 2013 19:05:15 +0000 (19:05 +0000)]
clean up about 22 warnings messages
llvm-svn: 187900
Eric Christopher [Wed, 7 Aug 2013 18:51:09 +0000 (18:51 +0000)]
Move assert above first use of variable that we'd be asserting on.
llvm-svn: 187899
John Thompson [Wed, 7 Aug 2013 18:49:47 +0000 (18:49 +0000)]
Fixed incorrect header guard/nested header mechanism.
llvm-svn: 187898
Rafael Espindola [Wed, 7 Aug 2013 18:08:19 +0000 (18:08 +0000)]
Correctly allign arrays on 32 bit systems.
Before this patch we would align
long long int big[1024];
to 4 bytes on 32 bit systems. The problem is that we were only looking
at the element type when getLargeArrayMinWidth returned non zero.
llvm-svn: 187897
NAKAMURA Takumi [Wed, 7 Aug 2013 17:21:23 +0000 (17:21 +0000)]
lit/LitConfig.py: Fixup for msys bash.
llvm-svn: 187896
Andrew Trick [Wed, 7 Aug 2013 17:20:32 +0000 (17:20 +0000)]
Confusing comment typo.
llvm-svn: 187895
Fariborz Jahanian [Wed, 7 Aug 2013 16:40:29 +0000 (16:40 +0000)]
Patch to fix doxygen trailing comments for ObjectiveC methods.
// rdar://
14258334
llvm-svn: 187893
Daniel Jasper [Wed, 7 Aug 2013 16:29:23 +0000 (16:29 +0000)]
clang-format: Fix corner case in OpenMP pragma formatting.
Before:
#pragma omp reduction( | : var)
After:
#pragma omp reduction(| : var)
llvm-svn: 187892
Jordan Rose [Wed, 7 Aug 2013 16:16:48 +0000 (16:16 +0000)]
Eliminate CXXConstructorDecl::IsImplicitlyDefined.
This field is just IsDefaulted && !IsDeleted; in all places it's used,
a simple check for isDefaulted() is superior anyway, and we were forgetting
to set it in a few cases.
Also eliminate CXXDestructorDecl::IsImplicitlyDefined, for the same reasons.
No intended functionality change.
llvm-svn: 187891
Daniel Malea [Wed, 7 Aug 2013 15:21:08 +0000 (15:21 +0000)]
Re-enable check previously disabled due to llvm.org/pr16603
llvm-svn: 187890
Alexander Potapenko [Wed, 7 Aug 2013 13:54:27 +0000 (13:54 +0000)]
[TSan] Fix free_race.c by removing `not` from the test invocation that doesn't fail.
llvm-svn: 187889
Rafael Espindola [Wed, 7 Aug 2013 12:54:47 +0000 (12:54 +0000)]
Indicate success for simple options when clang called with -cc1.
Patch by David Wiberg.
llvm-svn: 187888
NAKAMURA Takumi [Wed, 7 Aug 2013 12:53:53 +0000 (12:53 +0000)]
Lit: Fixup in r187886.
llvm-svn: 187887
NAKAMURA Takumi [Wed, 7 Aug 2013 12:44:29 +0000 (12:44 +0000)]
Lit: Resurrect --no-execute dropped in r187852.
For now, builders in bb.pgr.jp are using it.
llvm-svn: 187886
Alexander Potapenko [Wed, 7 Aug 2013 12:39:00 +0000 (12:39 +0000)]
[TSan] Let the users suppress use-after-free errors using the "race:" suppressions.
If there's a race between a memory access and a free() call in the client program,
it can be reported as a use-after-free (if the access occurs after the free()) or an ordinary race
(if free() occurs after the access).
We've decided to use a single "race:" prefix for both cases instead of introducing a "use-after-free:" one,
because in many cases this allows us to keep a single suppression for both the use-after-free and free-after-use.
This may be misleading if the use-after-free occurs in a non-racy way (e.g. in a single-threaded program).
But normally such bugs shall not be suppressed.
llvm-svn: 187885
Elena Demikhovsky [Wed, 7 Aug 2013 12:34:55 +0000 (12:34 +0000)]
AVX-512 set: Added BROADCAST instructions
with lowering logic and a test.
llvm-svn: 187884
Richard Sandiford [Wed, 7 Aug 2013 11:10:06 +0000 (11:10 +0000)]
[SystemZ] Optimize floating-point comparisons with zero
This follows the same lines as the integer code. In the end it seemed
easier to have a second 4-bit mask in TSFlags to specify the compare-like
CC values. That eats one more TSFlags bit than adding a CCHasUnordered
would have done, but it feels more concise.
llvm-svn: 187883
Richard Sandiford [Wed, 7 Aug 2013 11:03:34 +0000 (11:03 +0000)]
[SystemZ] Add floating-point load-and-test instructions
These instructions can also be used as comparisons with zero.
llvm-svn: 187882
Alexey Samsonov [Wed, 7 Aug 2013 10:41:49 +0000 (10:41 +0000)]
ASan: fix one more test case for pipefail
llvm-svn: 187881
Benjamin Kramer [Wed, 7 Aug 2013 10:29:38 +0000 (10:29 +0000)]
JumpThreading: Turn a select instruction into branching if it allows to thread one half of the select.
This is a common pattern coming out of simplifycfg generating gross code.
a: ; preds = %entry
%sel = select i1 %cmp1, double %add, double 0.
000000e+00
br label %b
b:
%cond5 = phi double [ %sel, %a ], [ %sub, %entry ]
%cmp6 = fcmp oeq double %cond5, 0.
000000e+00
br i1 %cmp6, label %if.then, label %if.end
becomes
a:
br i1 %cmp1, label %b, label %if.then
b:
%cond5 = phi double [ %sub, %entry ], [ %add, %a ]
%cmp6 = fcmp oeq double %cond5, 0.
000000e+00
br i1 %cmp6, label %if.then, label %if.end
Skipping block b completely if possible.
llvm-svn: 187880
Chandler Carruth [Wed, 7 Aug 2013 09:52:34 +0000 (09:52 +0000)]
Commit a no-op change to StringRef to (hopefully) trigger build bots.
r187874 seems to have been missed by the build bot infrastructure, and
the subsequent commits to compiler-rt don't seem to be queuing up new
build requsets. Hopefully this will.
As it happens, having the space here is the more common formatting. =]
llvm-svn: 187879
Alexey Samsonov [Wed, 7 Aug 2013 09:31:28 +0000 (09:31 +0000)]
Distinguish 32-bit ASan from 64-bit ASan in lit configs
llvm-svn: 187878
Alexey Samsonov [Wed, 7 Aug 2013 09:14:30 +0000 (09:14 +0000)]
Enable pipefail for ASan tests
llvm-svn: 187877
Evgeniy Stepanov [Wed, 7 Aug 2013 09:10:16 +0000 (09:10 +0000)]
[sanitizer] Intercept sched_getaffinity.
Re-applying with a more reliable test case.
llvm-svn: 187876
Alexey Samsonov [Wed, 7 Aug 2013 09:02:37 +0000 (09:02 +0000)]
Enable pipefail for TSan tests
llvm-svn: 187875
Chandler Carruth [Wed, 7 Aug 2013 08:47:36 +0000 (08:47 +0000)]
Add support for linking against a curses library when available and
using it to detect whether or not a terminal supports colors. This
replaces a particularly egregious hack that merely compared the TERM
environment variable to "dumb". That doesn't really translate to
a reasonable experience for users that have actually ensured their
terminal's capabilities are accurately reflected.
This makes testing a terminal for color support somewhat more expensive,
but it is called very rarely anyways. The important fast path when the
output is being piped somewhere is already in place.
The global lock may seem excessive, but the spec for calling into curses
is *terrible*. The whole library is terrible, and I spent quite a bit of
time looking for a better way of doing this before convincing myself
that this was the fundamentally correct way to behave. The damage of the
curses library is very narrowly confined, and we continue to use raw
escape codes for actually manipulating the colors which is a much sane
system than directly using curses here (IMO).
If this causes trouble for folks, please let me know. I've tested it on
Linux and will watch the bots carefully. I've also worked to account for
the variances of curses interfaces that I could finde documentation for,
but that may not have been sufficient.
llvm-svn: 187874
Alexey Samsonov [Wed, 7 Aug 2013 08:46:09 +0000 (08:46 +0000)]
Enable pipefail for LSan tests
llvm-svn: 187873
Eric Christopher [Wed, 7 Aug 2013 08:35:10 +0000 (08:35 +0000)]
Remove some parens. No functional change.
llvm-svn: 187872
Alexey Samsonov [Wed, 7 Aug 2013 08:23:32 +0000 (08:23 +0000)]
Documentation for sanitizer special case list format and -f(no-)?sanitize-blacklist flag
llvm-svn: 187871
Craig Topper [Wed, 7 Aug 2013 08:16:07 +0000 (08:16 +0000)]
Simplify code. No functional change intended.
llvm-svn: 187870
Evgeniy Stepanov [Wed, 7 Aug 2013 07:47:41 +0000 (07:47 +0000)]
Initialize SIInsertWaits::ExpInstrTypesSeen in the pass constructor.
This value may be used uninitialized in SIInsertWaits::insertWait.
Found with MemorySanitizer.
llvm-svn: 187869
Dmitri Gribenko [Wed, 7 Aug 2013 07:12:08 +0000 (07:12 +0000)]
Remove the assertion for now. This breaks lld.
lld has a hashtable with StringRef keys; it needs to iterate over the keys in
*insertion* order. This is currently implemented as std::vector<StringRef> +
DenseMap<StringRef, T>. This will probably need a proper
DenseMapInfo<StringRef> if we don't want to lose memory/performance by
migrating to a different data structure.
llvm-svn: 187868
Elena Demikhovsky [Wed, 7 Aug 2013 06:13:21 +0000 (06:13 +0000)]
LLVM Interpreter: MIPS tests should pass
llvm-svn: 187867
Dmitri Gribenko [Wed, 7 Aug 2013 05:51:27 +0000 (05:51 +0000)]
YAMLTraits.h: replace DenseMap that used a bad implementation of DenseMapInfo
for StringRef with a StringMap
The bug is that the empty key compares equal to the tombstone key.
Also added an assertion to DenseMap to catch similar bugs in future.
llvm-svn: 187866
Daniel Jasper [Wed, 7 Aug 2013 05:34:02 +0000 (05:34 +0000)]
clang-format: Improve formatting of builder-type calls.
This removes a formatting choice that was added at one point, but is
not generally liked by users. Specifically, in builder-type calls, do
(easily) break if the object before the ./-> is either a field or a
parameter-less function call. I.e., don't break after "aa.aa.aa" or
"aa.aa.aa()". In general, these sequences in builder-type calls are
seen as a single entity and thus breaking them up is a bad idea.
llvm-svn: 187865
Shuxin Yang [Wed, 7 Aug 2013 05:19:23 +0000 (05:19 +0000)]
Change public functions of LTOCodeGenerator from ret-false-on-succ to ret-true-on-succ.
As of this revision, all functions of LTOCodeGenerator are consistent in
ret-true-on-succ.
Tested on multiple OSes.
llvm-svn: 187864
Reed Kotler [Wed, 7 Aug 2013 04:00:26 +0000 (04:00 +0000)]
Create a pattern for the "trap" instruction.
llvm-svn: 187863
Daniel Dunbar [Wed, 7 Aug 2013 03:25:28 +0000 (03:25 +0000)]
[lit] Use py2&3 compatible exec() syntax.
llvm-svn: 187862
Daniel Dunbar [Wed, 7 Aug 2013 03:24:20 +0000 (03:24 +0000)]
[lit] Use newer StringIO class.
llvm-svn: 187861
Daniel Dunbar [Wed, 7 Aug 2013 03:23:12 +0000 (03:23 +0000)]
[lit] Use modern absolute/relative import style.
llvm-svn: 187860
Daniel Dunbar [Wed, 7 Aug 2013 03:22:02 +0000 (03:22 +0000)]
[lit] Avoid __cmp__ and cmp().
llvm-svn: 187859
Daniel Dunbar [Wed, 7 Aug 2013 03:20:54 +0000 (03:20 +0000)]
[lit] Avoid use of iterator .next() method.
llvm-svn: 187858
Daniel Dunbar [Wed, 7 Aug 2013 03:19:45 +0000 (03:19 +0000)]
[lit] Use .write() methods instead of print statement.
llvm-svn: 187857
Daniel Dunbar [Wed, 7 Aug 2013 03:18:36 +0000 (03:18 +0000)]
[lit] Use dual-compatible print() syntax where possible.
llvm-svn: 187856
Daniel Dunbar [Wed, 7 Aug 2013 03:17:27 +0000 (03:17 +0000)]
[lit] Remove use of deprecated parameter tuple unpacking.
llvm-svn: 187855
Daniel Dunbar [Wed, 7 Aug 2013 03:16:19 +0000 (03:16 +0000)]
[lit] Remove uses of deprecated except syntax.
- Since we only have a few of these, use the cumbersome method of getting the
exception object from 'sys' to retain the current pre-2.6 compatibility.
llvm-svn: 187854
Daniel Dunbar [Wed, 7 Aug 2013 03:15:10 +0000 (03:15 +0000)]
[lit] Use more modern syntax for constructing exceptions.
llvm-svn: 187853
Daniel Dunbar [Wed, 7 Aug 2013 03:14:00 +0000 (03:14 +0000)]
[lit] Drop --no-execute, which isn't generally useful.
llvm-svn: 187852
Daniel Dunbar [Wed, 7 Aug 2013 03:12:51 +0000 (03:12 +0000)]
[lit] tests: Change discovery test to use --show-tests.
llvm-svn: 187851
Daniel Dunbar [Wed, 7 Aug 2013 03:11:42 +0000 (03:11 +0000)]
[lit] Add a --show-tests option.
llvm-svn: 187850
Daniel Dunbar [Wed, 7 Aug 2013 03:08:46 +0000 (03:08 +0000)]
[lit] Remove dead ignoreStdError argument.
llvm-svn: 187849
Alexander Kornienko [Wed, 7 Aug 2013 02:08:31 +0000 (02:08 +0000)]
Disabled columnWidth test for OSX, need someone with Mac to deal with this effectively.
llvm-svn: 187848
Alexander Kornienko [Wed, 7 Aug 2013 01:23:28 +0000 (01:23 +0000)]
Use correct platform detection macro: __MACOSX__ -> __APPLE__
llvm-svn: 187847
Reid Kleckner [Wed, 7 Aug 2013 01:22:04 +0000 (01:22 +0000)]
Fix boolean logic in LockFileManager and test it
This fixes a bug from r187826.
Reviewers: hans
Differential Revision: http://llvm-reviews.chandlerc.com/D1304
llvm-svn: 187846
Reid Kleckner [Wed, 7 Aug 2013 01:21:33 +0000 (01:21 +0000)]
Avoid using alloca in Windows/Program.inc
One use needs to copy the alloca into a std::string, and the other use
is before calling CreateProcess, which is very heavyweight anyway.
llvm-svn: 187845
Eric Christopher [Wed, 7 Aug 2013 01:18:33 +0000 (01:18 +0000)]
Add a way to grab a particular attribute out of a DIE.
Use it when we're looking for a string in particular. Update comments
as well.
llvm-svn: 187844
Eric Christopher [Wed, 7 Aug 2013 01:18:24 +0000 (01:18 +0000)]
Move somewhat messy conditional out of line.
No functional change.
llvm-svn: 187843
Alexander Kornienko [Wed, 7 Aug 2013 00:41:18 +0000 (00:41 +0000)]
Disable tests on WIN32 (which has incorrect implementation of isPrint and
columnWidth), and partially disable tests on MACOSX (which handles some
characters differently).
llvm-svn: 187842
David Blaikie [Wed, 7 Aug 2013 00:37:26 +0000 (00:37 +0000)]
Revert "[sanitizer] Intercept sched_getaffinity."
This reverts commit r187788.
The test case is unreliable (as the test may be run in a situation in
which it has no affinity with cpu0). This can be recommitted with a more
reliable test - possibly using CPU_COUNT != 0 instead (I wasn't entirely
sure that a process was guaranteed to have at least one affinity, though
it seems reasonable, or I'd have made the change myself).
llvm-svn: 187841
Hans Wennborg [Wed, 7 Aug 2013 00:32:15 +0000 (00:32 +0000)]
clang-cl: Use .obj as object file extension instead of .o
Differential Revision: http://llvm-reviews.chandlerc.com/D1302
llvm-svn: 187840
Reid Kleckner [Wed, 7 Aug 2013 00:29:15 +0000 (00:29 +0000)]
Check for _strtoi64 in the cmake build if strtoll is missing
Previously this check was guarded by MSVC, which doesn't distinguish
between the compiler and the headers/library. This enables clang to
compile more of LLVM on Windows with Microsoft headers.
Remove some unused macros while I'm here: error_t and LTDL stuff.
llvm-svn: 187839
David Blaikie [Wed, 7 Aug 2013 00:25:12 +0000 (00:25 +0000)]
Remove unused functions introduced in r172685 to unbreak the Clang -Werror build
llvm-svn: 187838
Alexander Kornienko [Wed, 7 Aug 2013 00:07:07 +0000 (00:07 +0000)]
Implemented llvm::sys::locale::columnWidth and isPrint for the case of generic UTF8-capable terminal.
Summary:
This is a second attempt to get this right. After reading the Unicode
Standard I came up with the code that uses definitions of "printable" and
"column width" more suitable for terminal output (i.e. fixed-width fonts and
special treatment of many control characters).
The implementation here can probably be used for Windows and MacOS if someone
can test it properly.
The patch addresses PR14910.
Reviewers: jordan_rose, gribozavr
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D1253
llvm-svn: 187837
Aaron Ballman [Tue, 6 Aug 2013 23:34:04 +0000 (23:34 +0000)]
Replacing /GR with /GR- instead of applying both options to the project. This should reduce some build bot warnings (D9025: "overriding '/GR' with '/GR-'").
llvm-svn: 187836
Fariborz Jahanian [Tue, 6 Aug 2013 23:29:00 +0000 (23:29 +0000)]
Patch to fix doxygen trailing comments for ObjectiveC properties.
// rdar://
14258334
llvm-svn: 187835
Tom Stellard [Tue, 6 Aug 2013 23:12:34 +0000 (23:12 +0000)]
R600: Add new file from r187831 to CMakeLists.txt
llvm-svn: 187834
Jason Molenda [Tue, 6 Aug 2013 23:08:59 +0000 (23:08 +0000)]
Test to see if logging is enabled before printing
to a log channel in StopInfoBreakpoint::PerformAction().
<rdar://problem/
14651751>
llvm-svn: 187833
Akira Hatanaka [Tue, 6 Aug 2013 23:08:38 +0000 (23:08 +0000)]
[mips] Rename register classes CPURegs and CPU64Regs.
llvm-svn: 187832
Tom Stellard [Tue, 6 Aug 2013 23:08:28 +0000 (23:08 +0000)]
R600/SI: Use VSrc_* register classes as the default classes for types
Since the VSrc_* register classes contain both VGPRs and SGPRs, copies
that used be emitted by isel like this:
SGPR = COPY VGPR
Will now be emitted like this:
VSrC = COPY VGPR
This patch also adds a pass that tries to identify and fix situations where
a VGPR to SGPR copy may occur. Hopefully, these changes will make it
impossible for the compiler to generate illegal VGPR to SGPR copies.
llvm-svn: 187831
Tom Stellard [Tue, 6 Aug 2013 23:08:18 +0000 (23:08 +0000)]
R600/SI: Add more special cases for opcodes to ensureSRegLimit()
Also factor out the register class lookup to its own function.
llvm-svn: 187830
Justin Holewinski [Tue, 6 Aug 2013 23:06:42 +0000 (23:06 +0000)]
[NVPTX] We dont have any target specific flags yet for generating symbol references, so get rid of the default-only switch statement. Fixes an MSVC warning.
llvm-svn: 187829
Akira Hatanaka [Tue, 6 Aug 2013 23:01:10 +0000 (23:01 +0000)]
[mips] Mark instructions defined in Mips64InstrInfo.td that are duplicates of
instructions defined in MipsInstrInfo.td as codegen-only instructions.
llvm-svn: 187828
Bill Wendling [Tue, 6 Aug 2013 22:52:42 +0000 (22:52 +0000)]
Change the linkage of these global values to 'internal'.
The globals being generated here were given the 'private' linkage type. However,
this caused them to end up in different sections with the wrong prefix. E.g.,
they would be in the __TEXT,__const section with an 'L' prefix instead of an 'l'
(lowercase ell) prefix.
The problem is that the linker will eat a literal label with 'L'. If a weak
symbol is then placed into the __TEXT,__const section near that literal, then it
cannot distinguish between the literal and the weak symbol.
Part of the problems here was introduced because the address sanitizer converted
some C strings into constant initializers with trailing nuls. (Thus putting them
in the __const section with the wrong prefix.) The others were variables that
the address sanitizer created but simply had the wrong linkage type.
llvm-svn: 187827
Reid Kleckner [Tue, 6 Aug 2013 22:51:21 +0000 (22:51 +0000)]
Remove some std stream usage from Support and TableGen
LLVM's coding standards recommend raw_ostream and MemoryBuffer for
reading and writing text.
This has the side effect of allowing clang to compile more of Support
and TableGen in the Microsoft C++ ABI.
llvm-svn: 187826
Arnold Schwaighofer [Tue, 6 Aug 2013 22:37:52 +0000 (22:37 +0000)]
LoopVectorize: Allow vectorization of loops with lifetime markers
Patch by Marc Jessome!
llvm-svn: 187825
Akira Hatanaka [Tue, 6 Aug 2013 22:35:29 +0000 (22:35 +0000)]
[mips] Delete unnecessary InstAliases. Also, clear some of the InstAlias'
EmitAlias flag and have MipsInstPrinter::printAlias print the aliases.
llvm-svn: 187824
Rui Ueyama [Tue, 6 Aug 2013 22:31:59 +0000 (22:31 +0000)]
Rename TargetInfo -> LinkingContext.
Also change some local variable names: "ti" -> "context" and
"_targetInfo" -> "_context".
Differential Revision: http://llvm-reviews.chandlerc.com/D1301
llvm-svn: 187823
Michael Sartain [Tue, 6 Aug 2013 22:21:08 +0000 (22:21 +0000)]
Initialize m_leak member variable.
llvm-svn: 187822
Akira Hatanaka [Tue, 6 Aug 2013 22:20:40 +0000 (22:20 +0000)]
[mips] Replace usages of register classes with register operands. Also, remove
unnecessary jalr InstAliases in Mips64InstrInfo.td and add the code to print
jalr InstAliases in MipsInstPrinter::printAlias.
llvm-svn: 187821
Hans Wennborg [Tue, 6 Aug 2013 22:11:28 +0000 (22:11 +0000)]
clang-cl: Implement support for the /Fo option
This implements support for the /Fo option, which is used
to set the filename or output dir for object files.
Differential Revision: http://llvm-reviews.chandlerc.com/D1302
llvm-svn: 187820
Shuxin Yang [Tue, 6 Aug 2013 21:51:21 +0000 (21:51 +0000)]
Change private functions of LTOCodeGenerator from ret-false-on-succ to ret-true-on-succ.
llvm-svn: 187819
Daniel Malea [Tue, 6 Aug 2013 21:40:08 +0000 (21:40 +0000)]
Fix bug in Host::getLLDBPath() due to misusing Twine
- use SmallString instead
- original implementation resulted in incorrect behaviour of lldb -P
Fix by Kal Conley!
llvm-svn: 187818
Richard Trieu [Tue, 6 Aug 2013 21:31:54 +0000 (21:31 +0000)]
Add a new warning to -Wloop-analysis to detect suspicious increments or
decrements inside for loops. Idea for this warning proposed in PR15636:
http://llvm.org/bugs/show_bug.cgi?id=15636
llvm-svn: 187817
Daniel Malea [Tue, 6 Aug 2013 20:51:41 +0000 (20:51 +0000)]
Centralizing Intel compiler detection logic in lldbtest.py to avoid duplication in the future.
- Addresses review comments from Stefanus!
llvm-svn: 187816
Daniel Malea [Tue, 6 Aug 2013 20:39:27 +0000 (20:39 +0000)]
Support one more flavour of Intel compiler in TestThreadStepOut
- Thanks to Matt Kopec for noticing the failure!
llvm-svn: 187815
Matt Kopec [Tue, 6 Aug 2013 20:15:03 +0000 (20:15 +0000)]
Mark remaining failing test on icc as expected fail..
llvm-svn: 187814
Reid Kleckner [Tue, 6 Aug 2013 19:45:27 +0000 (19:45 +0000)]
Use gnu style builtins in MathExtras.h with clang on Windows
Clang does not provide BitScan* intrinsic implementations yet.
llvm-svn: 187813
Manman Ren [Tue, 6 Aug 2013 19:38:43 +0000 (19:38 +0000)]
Debug Info Finder|Verifier: handle DbgLoc attached to instructions.
Also remove checking of llvm.dbg.sp since it is not used in generating dwarf.
Current state of Finder:
DebugInfoFinder tries to list all debug info MDNodes used in a module. To
list debug info MDNodes used by an instruction, DebugInfoFinder provides
processDeclare, processValue and processLocation to handle DbgDeclareInst,
DbgValueInst and DbgLoc attached to instructions. processModule will go
through all DICompileUnits in llvm.dbg.cu and list debug info MDNodes
used by the CUs.
TODO:
1> Finder has a list of CUs, SPs, Types, Scopes and global variables. We
need to add a list of variables that are used by DbgDeclareInst and
DbgValueInst.
2> MDString fields should be null or isa<MDString> and MDNode fields should be
null or isa<MDNode>. We currently use empty string or int 0 to represent null.
3> Go though Verify functions and make sure that they check field types.
4> Clean up existing testing cases to remove llvm.dbg.sp and make sure each
testing case has a llvm.dbg.cu.
Re-apply r187609 with fix to pass ocaml binding. vmcore.ml generates a debug
location with scope being metadata !{}, in verifier we treat this as a null
scope.
llvm-svn: 187812
Sean Silva [Tue, 6 Aug 2013 19:34:37 +0000 (19:34 +0000)]
[LangRef] Alphabetize function attribute listing.
No content change.
Patch by Andrea Di Biagio!
llvm-svn: 187811
Fariborz Jahanian [Tue, 6 Aug 2013 18:06:23 +0000 (18:06 +0000)]
ObjectiveC migration: tweak setting of lifetime attribute
on @property migration. Don't set unsafe_unretained
on non-object properties. Set 'retain' on strong
properties. Makecertain properties with specific
names unsafe_unretained as well.
llvm-svn: 187810
Marshall Clow [Tue, 6 Aug 2013 17:17:13 +0000 (17:17 +0000)]
Implement tests for NULL iterators for <array> re: N3644
llvm-svn: 187809
Jakub Staszak [Tue, 6 Aug 2013 17:03:42 +0000 (17:03 +0000)]
Adjust file to the coding standard.
llvm-svn: 187808
Hal Finkel [Tue, 6 Aug 2013 17:03:03 +0000 (17:03 +0000)]
Add PPC64 mulli pattern
The PPC backend had been missing a pattern to generate mulli for 64-bit
multiples. We had been generating it only for 32-bit multiplies. Unfortunately,
generating li + mulld unnecessarily increases register pressure.
llvm-svn: 187807
Jakub Staszak [Tue, 6 Aug 2013 16:40:40 +0000 (16:40 +0000)]
Remove extraneous semicolon.
llvm-svn: 187806
Marshall Clow [Tue, 6 Aug 2013 16:14:36 +0000 (16:14 +0000)]
Implement NULL iterators for <forward_list> and <deque> re: N3644
llvm-svn: 187805
Mihai Popa [Tue, 6 Aug 2013 16:07:46 +0000 (16:07 +0000)]
This corrects creation of operands for t2PLDW. It also removes the definition of t2PLDWpci,
as pldw does not have a literal variant (i.e. pc relative version)
llvm-svn: 187804
Mihai Popa [Tue, 6 Aug 2013 15:52:36 +0000 (15:52 +0000)]
Support APSR_nzcv as operand for Thumb2 mrc. Deprecate pre-UAL syntax (pc instead of apsr_nzcv)
llvm-svn: 187803
Daniel Malea [Tue, 6 Aug 2013 15:02:32 +0000 (15:02 +0000)]
Allow building test suite with non-default libc++
- add new "--libcxx" parameter to dotest.py to specify path to custom libc++
llvm-svn: 187802
Daniel Malea [Tue, 6 Aug 2013 15:00:23 +0000 (15:00 +0000)]
Test compatibility improvements for ICC
- update TestThreadStepOut.py to work with Intel compilers
- fix typo in TestConcurrentEvents
llvm-svn: 187801
Justin Holewinski [Tue, 6 Aug 2013 14:13:34 +0000 (14:13 +0000)]
[NVPTX] Add missing patterns for i1 [s,u]int_to_fp
llvm-svn: 187800