Tobias Grosser [Tue, 11 Jun 2013 21:45:01 +0000 (21:45 +0000)]
Make host ARM CPU feature detection independent of the vendor
For ARM on linux we use /proc/cpuinfo to detect the host CPU's features.
Linux derives these values without ever looking at the vendor of the
specific CPU implementation. Hence, it adds little value, if we parse
the output of /proc/cpuinfo only for certain vendors.
This patch enables us to derive the correct feature flags e.g. for Qualcomm
CPUs.
llvm-svn: 183790
Rui Ueyama [Tue, 11 Jun 2013 21:39:58 +0000 (21:39 +0000)]
[PECOFF][Writer] Structure of pe32_header was changed.
Change for http://llvm-reviews.chandlerc.com/D952
Reviewers: Bigcheese
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D953
llvm-svn: 183789
Rui Ueyama [Tue, 11 Jun 2013 21:39:48 +0000 (21:39 +0000)]
[PECOFF] Remove COFF header from PE header for simplicity.
COFF header is always present both in executable and in object file. PE header
is present only in executable. So the natural way to handle PE/COFF file is
treating COFF is mandatory header and PE is optional. Current data structre
does not allow it, because PE header includes COFF header. Removing COFF
header will simplify the code to handle PE/COFF files.
Reviewers: Bigcheese
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D952
llvm-svn: 183788
Richard Smith [Tue, 11 Jun 2013 20:38:45 +0000 (20:38 +0000)]
Add a testcase for PR7434, which is a bug we no longer appear to have.
llvm-svn: 183787
Rafael Espindola [Tue, 11 Jun 2013 20:31:32 +0000 (20:31 +0000)]
Include PathV1.h in a file that uses it.
llvm-svn: 183786
Rafael Espindola [Tue, 11 Jun 2013 20:24:32 +0000 (20:24 +0000)]
More build fixes.
llvm-svn: 183785
Rafael Espindola [Tue, 11 Jun 2013 20:12:07 +0000 (20:12 +0000)]
Fix build after clang change r183781.
llvm-svn: 183784
Rafael Espindola [Tue, 11 Jun 2013 20:06:05 +0000 (20:06 +0000)]
Try to fix the windows build.
llvm-svn: 183783
Rafael Espindola [Tue, 11 Jun 2013 20:00:56 +0000 (20:00 +0000)]
Include PathV1.h in files that use it.
This is preparation for replacing Path.h with PathV2.h.
llvm-svn: 183782
Rafael Espindola [Tue, 11 Jun 2013 19:59:07 +0000 (19:59 +0000)]
Include PathV1.h in files that use it.
This is preparation for replacing Path.h with PathV2.h.
llvm-svn: 183781
Rafael Espindola [Tue, 11 Jun 2013 19:32:57 +0000 (19:32 +0000)]
Remove Path::getDirname.
llvm-svn: 183780
Rafael Espindola [Tue, 11 Jun 2013 19:29:48 +0000 (19:29 +0000)]
Remove Path::getBasename.
llvm-svn: 183779
Rafael Espindola [Tue, 11 Jun 2013 19:25:17 +0000 (19:25 +0000)]
Remove Path::getLast.
llvm-svn: 183778
Rafael Espindola [Tue, 11 Jun 2013 19:18:05 +0000 (19:18 +0000)]
Remove GetDLLSuffix.
llvm-svn: 183777
Richard Smith [Tue, 11 Jun 2013 19:14:25 +0000 (19:14 +0000)]
Revert r183721. It caused cleanups to be delayed too long in some cases.
Testcase to follow.
llvm-svn: 183776
Rafael Espindola [Tue, 11 Jun 2013 19:13:52 +0000 (19:13 +0000)]
Remove GetRootDirectory.
llvm-svn: 183775
Enrico Granata [Tue, 11 Jun 2013 19:13:50 +0000 (19:13 +0000)]
Making our Python decrefs NULL-safe
llvm-svn: 183774
Rafael Espindola [Tue, 11 Jun 2013 19:08:15 +0000 (19:08 +0000)]
Remove GetUserHomeDirectory.
llvm-svn: 183773
Enrico Granata [Tue, 11 Jun 2013 19:04:32 +0000 (19:04 +0000)]
<rdar://problem/
13759177>
Allowing LLDB to resolve names of Python functions when they are located in classes
This allows things like *bound* classmethods to be used for formatters, commands, ...
llvm-svn: 183772
Rafael Espindola [Tue, 11 Jun 2013 19:04:13 +0000 (19:04 +0000)]
Don't define LTDL_SHLIBPATH_VAR.
llvm-svn: 183771
Rafael Espindola [Tue, 11 Jun 2013 18:58:47 +0000 (18:58 +0000)]
Remove GetSystemLibraryPaths.
llvm-svn: 183770
Rafael Espindola [Tue, 11 Jun 2013 18:52:11 +0000 (18:52 +0000)]
Don't define LLVM_LIBDIR, it is not used anymore.
llvm-svn: 183769
Samuel Benzaquen [Tue, 11 Jun 2013 18:51:07 +0000 (18:51 +0000)]
Reduce the number of symbols on the object file.
Summary:
Some compilers where failing with this file because the number of symbols was above 2**15.
- Replace std::list<> and std::vector<> with plain arrays.
- Change VariadicMatcherCreateCallback to be a function template, and a
single class that wraps the instantiations.
- Remove some more unnecessary template arguments and function calls.
Reviewers: klimek
CC: cfe-commits, revane
Differential Revision: http://llvm-reviews.chandlerc.com/D948
llvm-svn: 183768
Akira Hatanaka [Tue, 11 Jun 2013 18:48:16 +0000 (18:48 +0000)]
[mips] Use function TargetInstrInfo::getRegClass.
No functionality changes.
llvm-svn: 183767
Enrico Granata [Tue, 11 Jun 2013 18:47:55 +0000 (18:47 +0000)]
<rdar://problem/
13779789>
Allow memory read -t to take persistent types (those defined with expression struct $....)
llvm-svn: 183766
Rafael Espindola [Tue, 11 Jun 2013 18:45:35 +0000 (18:45 +0000)]
Remove Path::GetBitcodeLibraryPaths.
llvm-svn: 183765
Rafael Espindola [Tue, 11 Jun 2013 18:41:07 +0000 (18:41 +0000)]
Remove unused FindLibrary function.
llvm-svn: 183764
Rafael Espindola [Tue, 11 Jun 2013 18:18:02 +0000 (18:18 +0000)]
Remove sys::identifyFileType.
llvm-svn: 183763
Rafael Espindola [Tue, 11 Jun 2013 18:12:28 +0000 (18:12 +0000)]
Convert another use of sys::identifyFileType.
No functionality change.
llvm-svn: 183762
Michael Liao [Tue, 11 Jun 2013 18:09:21 +0000 (18:09 +0000)]
Fix documentation on the path to Bitcode reader/writer
llvm-svn: 183761
Argyrios Kyrtzidis [Tue, 11 Jun 2013 18:05:42 +0000 (18:05 +0000)]
[libclang/python] Add a few "cursor kinds" that were missing in the python binding for libclang.
Patch by Mathieu Baudet!
llvm-svn: 183760
Rafael Espindola [Tue, 11 Jun 2013 18:05:26 +0000 (18:05 +0000)]
Convert another use of sys::identifyFileType.
No functionality change.
llvm-svn: 183759
Rafael Espindola [Tue, 11 Jun 2013 18:01:14 +0000 (18:01 +0000)]
Convert another use of sys::identifyFileType.
No functionality change.
llvm-svn: 183758
Eli Friedman [Tue, 11 Jun 2013 17:58:38 +0000 (17:58 +0000)]
Make ASTContext::Allocate use size_t for the size argument.
llvm-svn: 183757
Rafael Espindola [Tue, 11 Jun 2013 17:48:06 +0000 (17:48 +0000)]
Change how globalopt handles aliases in llvm.used.
Instead of a custom implementation of replaceAllUsesWith, we just call
replaceAllUsesWith and recreate llvm.used and llvm.compiler-used.
This change is particularity interesting because it makes llvm see
through what clang is doing with static used functions in extern "C"
contexts. With this change, running clang -O2 in
extern "C" {
__attribute__((used)) static void foo() {}
}
produces
@llvm.used = appending global [1 x i8*] [i8* bitcast (void ()* @foo to
i8*)], section "llvm.metadata"
define internal void @foo() #0 {
entry:
ret void
}
llvm-svn: 183756
Greg Clayton [Tue, 11 Jun 2013 17:32:06 +0000 (17:32 +0000)]
Remove eFormatHalfFloat as it isn't needed. eFormatFloat should be used and the byte size will tell us how to display it.
llvm-svn: 183755
Rafael Espindola [Tue, 11 Jun 2013 17:28:56 +0000 (17:28 +0000)]
Convert another use of sys::identifyFileType.
No functionality change.
llvm-svn: 183754
Rafael Espindola [Tue, 11 Jun 2013 17:25:45 +0000 (17:25 +0000)]
Port r183666 to identify_magic.
It will be tested in the next commit which moves another user to identify_magic.
Original message:
Fix an out of bounds array access.
We were looking at Magic[5] without checking Length. Since this path would not
return unless Length >= 18 anyway, just move the >= 18 check up.
llvm-svn: 183753
Rafael Espindola [Tue, 11 Jun 2013 17:22:12 +0000 (17:22 +0000)]
Fix variable name.
llvm-svn: 183752
Argyrios Kyrtzidis [Tue, 11 Jun 2013 16:42:34 +0000 (16:42 +0000)]
Modify a comment to reflect changes of r183717.
llvm-svn: 183751
Alexander Kornienko [Tue, 11 Jun 2013 16:01:49 +0000 (16:01 +0000)]
Insert a space at the start of a line comment in case it starts with an alphanumeric character.
Summary:
"//Test" becomes "// Test". This change is aimed to improve code
readability and conformance to certain coding styles. If a comment starts with a
non-alphanumeric character, the space isn't added, e.g. "//-*-c++-*-" stays
unchanged.
Reviewers: klimek
Reviewed By: klimek
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D949
llvm-svn: 183750
Rafael Espindola [Tue, 11 Jun 2013 15:29:10 +0000 (15:29 +0000)]
Fix variable name style. Don't cast to and from int.
This enables the compiler to see the enum and produce warnings about a switch
not being fully covered. Fix one of these warnings.
llvm-svn: 183749
Sergey Matveev [Tue, 11 Jun 2013 15:26:20 +0000 (15:26 +0000)]
[lsan] Harmonized some naming inconsistencies.
llvm-svn: 183748
Rafael Espindola [Tue, 11 Jun 2013 15:19:04 +0000 (15:19 +0000)]
Convert another use of sys::identifyFileType.
No functionality change.
llvm-svn: 183747
Rafael Espindola [Tue, 11 Jun 2013 15:09:43 +0000 (15:09 +0000)]
Convert another use of sys::identifyFileType.
No functionality change.
llvm-svn: 183746
Rafael Espindola [Tue, 11 Jun 2013 14:39:59 +0000 (14:39 +0000)]
Convert a use of sys::identifyFileType to sys::fs::identify_magic.
No functionality change.
llvm-svn: 183745
Benjamin Kramer [Tue, 11 Jun 2013 13:32:25 +0000 (13:32 +0000)]
R600: Make helper functions static.
llvm-svn: 183744
Rafael Espindola [Tue, 11 Jun 2013 13:18:13 +0000 (13:18 +0000)]
Require members of llvm.used to be named.
The effect of llvm.used is to introduce an invisible reference, so this seems
a reasonable restriction. It will be used to provide an easy ordering of
the entries in llvm.used.
llvm-svn: 183743
Benjamin Kramer [Tue, 11 Jun 2013 13:13:47 +0000 (13:13 +0000)]
Silence GCC warning.
llvm-svn: 183742
Benjamin Kramer [Tue, 11 Jun 2013 13:07:19 +0000 (13:07 +0000)]
ASTUnit: Invert the dependency of PrecompilePreambleAction on PrecompilePreambleConsumer.
Actions outlive consumers. PR16295. Found by AddressSanitizer.
llvm-svn: 183741
Rafael Espindola [Tue, 11 Jun 2013 12:36:05 +0000 (12:36 +0000)]
Factor duplicated yamlReader creation.
The yaml reader is not specific to any file format. This patch moves
it to TargetInfo and makes validate a non virtual interface so that it
can be constructed from a single location.
The same method will be used to create a reader for llvm bitcode
files.
llvm-svn: 183740
Manuel Klimek [Tue, 11 Jun 2013 12:00:24 +0000 (12:00 +0000)]
Make it possible to assign clang-format-buffer to a keybinding.
Patch by Chris Gray.
llvm-svn: 183739
Dmitry Vyukov [Tue, 11 Jun 2013 11:44:43 +0000 (11:44 +0000)]
tsan: add -Wno-maybe-uninitialized to Go build script
this is how the rest of the codebase is built
llvm-svn: 183738
NAKAMURA Takumi [Tue, 11 Jun 2013 10:01:42 +0000 (10:01 +0000)]
Rework r183728, suppress assert(0) for now. Its behavior depends on assertions on win32 hosts.
FIXME: Introduce yet another checker but assert(0).
llvm-svn: 183736
Sergey Matveev [Tue, 11 Jun 2013 09:52:02 +0000 (09:52 +0000)]
[lsan] Fix the unittest makefiles.
llvm-svn: 183735
Mihai Popa [Tue, 11 Jun 2013 09:48:35 +0000 (09:48 +0000)]
It adds support for negative zero offsets for loads and stores.
Negative zero is returned by the primary expression parser as INT32_MIN, so all that the method needs to do is to accept this value.
Behavior already present for Thumb2.
llvm-svn: 183734
Mihai Popa [Tue, 11 Jun 2013 09:39:51 +0000 (09:39 +0000)]
This patch adds support for FPINST/FPINST2 as operands to vmsr/vmrs. These are optional registers that may be supported some ARM implementations to aid with resolution of floating point exceptions. The manual pages for vmsr and vmrs do not detail their use. Encodings and other information can be found in ARM Architecture Reference Manual section F, chapter 6, paragraph 3.
llvm-svn: 183733
Alexey Samsonov [Tue, 11 Jun 2013 08:14:24 +0000 (08:14 +0000)]
[Sanitizer] add file forgotten in r183730
llvm-svn: 183732
Amaury de la Vieuville [Tue, 11 Jun 2013 08:14:14 +0000 (08:14 +0000)]
ARM: Enforce decoding rules for VLDn instructions
llvm-svn: 183731
Alexey Samsonov [Tue, 11 Jun 2013 08:13:36 +0000 (08:13 +0000)]
[Sanitizer] support running external llvm-symbolizer on Mac
llvm-svn: 183730
Amaury de la Vieuville [Tue, 11 Jun 2013 08:03:20 +0000 (08:03 +0000)]
ARM: Fix STREX/LDREX reecoding
The decoded MCInst wasn't reencoded as the same instruction
llvm-svn: 183729
NAKAMURA Takumi [Tue, 11 Jun 2013 06:52:58 +0000 (06:52 +0000)]
Tweak a couple of tests on win32 hosts with +Asserts.
- Don't use assert(0), or tests may pass or fail according to assertions.
- For now, The tests are marked as XFAIL for win32 hosts.
FIXME: Could we avoid XFAIL to specify triple in the RUN lines?
llvm-svn: 183728
NAKAMURA Takumi [Tue, 11 Jun 2013 06:52:43 +0000 (06:52 +0000)]
ARMAsmBackend.cpp: Use Triple::isOSBinFormatCOFF() instead of isOSWindows().
FYI, isOSBinFormatCOFF() is as same as isOSWindows(), on trunk.
llvm-svn: 183727
NAKAMURA Takumi [Tue, 11 Jun 2013 06:52:36 +0000 (06:52 +0000)]
Whitespace.
llvm-svn: 183726
David Majnemer [Tue, 11 Jun 2013 06:19:45 +0000 (06:19 +0000)]
Remove some unicode that sneaked in.
llvm-svn: 183725
Rui Ueyama [Tue, 11 Jun 2013 04:52:14 +0000 (04:52 +0000)]
[WinLink] Add -force command line option to allow undefined symbols.
llvm-svn: 183724
David Majnemer [Tue, 11 Jun 2013 03:56:29 +0000 (03:56 +0000)]
Implement DR61: Address of ambiguous bound methods should be disallowed
DR61 affirms that expressions containing unresolved member access should
be disallowed when performing "address of" operations.
llvm-svn: 183723
David Majnemer [Tue, 11 Jun 2013 03:51:23 +0000 (03:51 +0000)]
Implement DR85: Redeclaration of member is forbidden
Disallow the existence of a declaration of a member class that isn't a
forward declaration before it's definition.
llvm-svn: 183722
Richard Smith [Tue, 11 Jun 2013 02:41:00 +0000 (02:41 +0000)]
Rework IR emission for lifetime-extended temporaries. Instead of trying to walk
into the expression and dig out a single lifetime-extended entity and manually
pull its cleanup outside the expression, instead keep a list of the cleanups
which we'll need to emit when we get to the end of the full-expression. Also
emit those cleanups early, as EH-only cleanups, to cover the case that the
full-expression does not terminate normally. This allows IR generation to
properly model temporary lifetime when multiple temporaries are extended by the
same declaration.
We have a pre-existing bug where an exception thrown from a temporary's
destructor does not clean up lifetime-extended temporaries created in the same
expression and extended to automatic storage duration; that is not fixed by
this patch.
llvm-svn: 183721
Eli Friedman [Tue, 11 Jun 2013 01:59:28 +0000 (01:59 +0000)]
Fix a very silly mistake in r183590.
llvm-svn: 183720
Enrico Granata [Tue, 11 Jun 2013 01:26:35 +0000 (01:26 +0000)]
<rdar://problem/
12876503>
Adding a new setting interpreter.stop-command-source-on-error that dictates a default behavior for whether command source should stop upon hitting an error
You can still override the setting for each individual invocation with the usual -e setting
llvm-svn: 183719
Eli Friedman [Tue, 11 Jun 2013 01:08:22 +0000 (01:08 +0000)]
Fix a FIXME in a testcase about packed structs and calls I left around
while fixing a related bug. The fix here was simpler than I thought it
would be.
Fixes <rdar://problem/
10530444>.
llvm-svn: 183718
Argyrios Kyrtzidis [Tue, 11 Jun 2013 00:36:55 +0000 (00:36 +0000)]
[libclang] Allow building a precompiled preamble with compiler errors
A while ago we allowed libclang to build a PCH that had compiler errors; this was to retain the performance
afforded by a PCH even if the user's code is in an intermediate state.
Extend this for the precompiled preamble as well.
rdar://
14109828
llvm-svn: 183717
Enrico Granata [Tue, 11 Jun 2013 00:18:18 +0000 (00:18 +0000)]
<rdar://problem/
12783351>
Add support for half-floats, as specified by IEEE-754-2008
With this checkin, you can now say:
(lldb) x/7hf foo
to read 7 half-floats at address foo
llvm-svn: 183716
Sean Silva [Tue, 11 Jun 2013 00:13:52 +0000 (00:13 +0000)]
Fix dubious type name similar to member name.
Should bring bots back to life.
llvm-svn: 183715
Fariborz Jahanian [Tue, 11 Jun 2013 00:08:48 +0000 (00:08 +0000)]
Remove mis-grouping of an objc diagostic in my last
patch.
llvm-svn: 183714
Fariborz Jahanian [Mon, 10 Jun 2013 23:51:51 +0000 (23:51 +0000)]
Objective-C [qoi]: Issue better warning when nsstring literal is missing
the '@'. PR16287 and // rdar://
14106083
llvm-svn: 183713
Sean Silva [Mon, 10 Jun 2013 23:48:38 +0000 (23:48 +0000)]
Fix spurious semicolons.
Apparently these macros have semicolons inside of them already.
llvm-svn: 183712
Sean Silva [Mon, 10 Jun 2013 23:44:15 +0000 (23:44 +0000)]
[yaml2obj] Initial ELF support.
Currently, only emitting the ELF header is supported (no sections or
segments).
The ELFYAML code organization is broadly similar to the COFFYAML code.
llvm-svn: 183711
Tim Northover [Mon, 10 Jun 2013 23:20:58 +0000 (23:20 +0000)]
ARM: diagnose ARM/Thumb assembly switches on CPUs only supporting one.
Some ARM CPUs only support ARM mode (ancient v4 ones, for example) and some
only support Thumb mode (M-class ones currently). This makes sure such CPUs
default to the correct mode and makes the AsmParser diagnose an attempt to
switch modes incorrectly.
rdar://
14024354
llvm-svn: 183710
Nick Lewycky [Mon, 10 Jun 2013 23:10:59 +0000 (23:10 +0000)]
Fix xemacs mode line, don't put them in .cpp files (just header files). No
functionality change.
llvm-svn: 183709
Rui Ueyama [Mon, 10 Jun 2013 22:57:49 +0000 (22:57 +0000)]
[PECOFF] Refactoring: Split FileCOFF c'tor. No functionality change.
Split FileCOFF's constructor into mainly two private methods.
One method is responsible to iterate over symbol tables, and other
method is to atomize defined atoms. This is for readability and
no changes in functionality.
Reviewers: Bigcheese
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D940
llvm-svn: 183708
Enrico Granata [Mon, 10 Jun 2013 22:39:08 +0000 (22:39 +0000)]
Adding properties to the SBBreakpoint class
llvm-svn: 183707
Enrico Granata [Mon, 10 Jun 2013 22:26:15 +0000 (22:26 +0000)]
<rdar://problem/
14101771>
Hardening the CFBitVector data formatter against failed reads
llvm-svn: 183706
Rui Ueyama [Mon, 10 Jun 2013 22:25:41 +0000 (22:25 +0000)]
[PECOFF][Writer] Set required OS version numbers.
llvm-svn: 183705
Eric Christopher [Mon, 10 Jun 2013 22:24:10 +0000 (22:24 +0000)]
Remove a few fixmes, the only work we're doing is getting the string
to return and this is done all over.
llvm-svn: 183704
Eric Christopher [Mon, 10 Jun 2013 22:24:07 +0000 (22:24 +0000)]
Fix up comment.
llvm-svn: 183703
Matt Kopec [Mon, 10 Jun 2013 22:14:47 +0000 (22:14 +0000)]
Add output of fault address on an address related crash (ie. segfault).
llvm-svn: 183701
Rui Ueyama [Mon, 10 Jun 2013 22:09:21 +0000 (22:09 +0000)]
[PECOFF] Add comments for symbols.
llvm-svn: 183700
Eli Friedman [Mon, 10 Jun 2013 22:04:49 +0000 (22:04 +0000)]
Make sure we don't emit invalid IR for StmtExprs with complex cleanups.
Fixes <rdar://problem/
14074868>.
llvm-svn: 183699
Eric Christopher [Mon, 10 Jun 2013 21:59:28 +0000 (21:59 +0000)]
Remove unused function.
llvm-svn: 183698
Adrian Prantl [Mon, 10 Jun 2013 21:36:55 +0000 (21:36 +0000)]
cleanup (address some more review comments for r183474):
- reduce default buffer size to 64, which will still be large enough to
hold any property names found in the wild.
- get rid of the /*static*/ comments.
llvm-svn: 183697
Rui Ueyama [Mon, 10 Jun 2013 21:32:44 +0000 (21:32 +0000)]
[ELF] Refactor File.h.
- Split createAtom() in lib/ReaderWriter/ELF/File.h into small methods.
- Added comments to code in other methods.
No functionality changes.
Reviewers: shankarke
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D921
llvm-svn: 183696
Eric Christopher [Mon, 10 Jun 2013 20:58:53 +0000 (20:58 +0000)]
IndentCount is only used within NDEBUG code.
llvm-svn: 183695
Reid Kleckner [Mon, 10 Jun 2013 20:51:09 +0000 (20:51 +0000)]
Use FPT::getArgTypes() instead of manually building ArrayRefs
Made significantly easier with git-clang-format.
Differential Revision: http://llvm-reviews.chandlerc.com/D947
llvm-svn: 183694
Tim Northover [Mon, 10 Jun 2013 20:43:49 +0000 (20:43 +0000)]
X86: Stop LEA64_32r doing unspeakable things to its arguments.
Previously LEA64_32r went through virtually the entire backend thinking it was
using 32-bit registers until its blissful illusions were cruelly snatched away
by MCInstLower and 64-bit equivalents were substituted at the last minute.
This patch makes it behave normally, and take 64-bit registers as sources all
the way through. Previous uses (for 32-bit arithmetic) are accommodated via
SUBREG_TO_REG instructions which make the types and classes agree properly.
llvm-svn: 183693
Rafael Espindola [Mon, 10 Jun 2013 20:32:27 +0000 (20:32 +0000)]
Add a missing 'e'.
llvm-svn: 183692
Benjamin Kramer [Mon, 10 Jun 2013 20:19:35 +0000 (20:19 +0000)]
tblgen: Assert that InstRWs doesn't grows when we don't expect it.
llvm-svn: 183690
Jordan Rose [Mon, 10 Jun 2013 19:34:30 +0000 (19:34 +0000)]
[analyzer] SATestBuild: Don't require reference results to have logs.
The Logs directory isn't used for testing, so it's filtered out ahead of
time. However, there's then no reason to include it in version control at
all. Don't error if it's not present.
llvm-svn: 183689
Richard Trieu [Mon, 10 Jun 2013 18:52:07 +0000 (18:52 +0000)]
Add a new warning, -Wlogical-not-parentheses, to -Wparentheses.
This warning triggers on the logical not of a non-boolean expression on the
left hand side of comparison. Often, the user meant to negate the comparison,
not just the left hand side of the comparison. Two notes are also emitted,
the first with a fix-it to add parentheses around the comparison, and the other
to put parenthesis around the not expression to silence the warning.
bool not_equal(int x, int y) {
return !x == y; // warn here
}
return !(x == y); // first fix-it, to negate comparison.
return (!x) == y; // second fix-it, to silence warning.
llvm-svn: 183688