Commit Graph

156012 Commits

Author SHA1 Message Date
Jakub Staszak d184e2decc Add some constantness.
llvm-svn: 188844
2013-08-20 23:04:15 +00:00
Bill Wendling 0911248b8d Use -disable-output and to suppress output and don't use a temporary file unless we need one.
llvm-svn: 188843
2013-08-20 23:00:25 +00:00
Akira Hatanaka 14e31a2fe7 [mips] Define register class FGRH32 for the high half of the 64-bit floating
point registers. We will need this register class later when we add
definitions for instructions mfhc1 and mthc1. Also, remove sub-register indices
sub_fpeven and sub_fpodd and use sub_lo and sub_hi instead.

llvm-svn: 188842
2013-08-20 22:58:56 +00:00
Jakub Staszak 906e48f2a0 Fix include guards.
llvm-svn: 188841
2013-08-20 22:52:02 +00:00
Eli Friedman 85698c8d7b Remove Extension warning for GNU local labels.
We generally don't warn about extensions involving keywords reserved
for the implementation, so we shouldn't warn here either: the
standard doesn't require it, and it doesn't provide useful information
to the user.

llvm-svn: 188840
2013-08-20 22:44:32 +00:00
Eli Friedman 571c3ae7d6 Add more specific flags for misc GNU extensions.
This adds the following as subgroups of -Wgnu: -Wgnu-alignof-expression,
-Wgnu-case-range, -Wgnu-complex-integer, -Wgnu-conditional-omitted-operand,
-Wgnu-empty-initializer, -Wgnu-label-as-value, -Wgnu-local-label,
and -Wgnu-statement-expression,

Patch by Peter Lewis.

llvm-svn: 188839
2013-08-20 22:44:28 +00:00
Fariborz Jahanian 301b52145f ObjectiveC migrator: make sure audited pragams are
dumped for last declarations in the current TU. wip.

llvm-svn: 188838
2013-08-20 22:42:13 +00:00
Rafael Espindola 22ce34aee8 Centralize the handling of -target-cpu (-cc1, -cc1as) and -mcpu (gold plugin).
llvm-svn: 188837
2013-08-20 22:12:08 +00:00
David Blaikie 4478ac3e21 Test case for PR16933/r188707.
llvm-svn: 188836
2013-08-20 22:01:44 +00:00
Eli Friedman a617d09422 Fix iterator invalidation. PR16935.
llvm-svn: 188835
2013-08-20 22:01:43 +00:00
David Blaikie ce76304627 DebugInfo: comment/inlining based on feedback from Eric & Adrian
llvm-svn: 188834
2013-08-20 21:49:21 +00:00
Hans Wennborg bcbc89cf0b Look at lowercase version of argv[0] when determining driver mode
llvm-svn: 188833
2013-08-20 21:47:50 +00:00
Arnold Schwaighofer e1f3ab69d1 SLPVectorizer: Fix invalid iterator errors
Update iterator when the SLP vectorizer changes the instructions in the basic
block by restarting the traversal of the basic block.

Patch by Yi Jiang!

Fixes PR 16899.

llvm-svn: 188832
2013-08-20 21:21:45 +00:00
Matt Arsenault 7a960a8455 Teach ConstantFolding about pointer address spaces
llvm-svn: 188831
2013-08-20 21:20:04 +00:00
Akira Hatanaka 6781fc1648 [mips] Resolve register classes dynamically using ptr_rc to reduce the number of
load/store instructions defined. Previously, we were defining load/store
instructions for each pointer size (32 and 64-bit), but now we need just one
definition.

llvm-svn: 188830
2013-08-20 21:08:22 +00:00
David Blaikie 8d5e128bd4 DebugInfo: Simplify/clarify propagation of typemembers between declaration and definition
Based on code review feedback from Eric Christopher (on r188739) and
Adrian Prantl (r188642).

llvm-svn: 188829
2013-08-20 21:03:29 +00:00
Reed Kotler d8f3362557 Add an option which permits the user to specify using a bitmask, that various
functions be compiled as mips32, without having to add attributes. This
is useful in certain situations where you don't want to have to edit the
function attributes in the source. For now it's only an option used for
the compiler developers when debugging the mips16 port.

llvm-svn: 188826
2013-08-20 20:53:09 +00:00
Akira Hatanaka a43b56d9af [mips] Guard micromips instructions with predicate InMicroMips. Also, fix
assembler predicate HasStdEnd so that it is false when the target is micromips.

llvm-svn: 188824
2013-08-20 20:46:51 +00:00
Fariborz Jahanian 5874e6d384 ObjectiveC migrator: More tweaking of heuristics
for an audited cf function to not include those
which are annotated by user.

llvm-svn: 188823
2013-08-20 20:45:28 +00:00
Richard Smith e156254d4c During typo correction, check for an exact match in an unimported module. If we
find one, then report the error as a missing import instead of as a typo.

llvm-svn: 188821
2013-08-20 20:35:18 +00:00
Edwin Vane d2cd2a4e1e cpp11-migrate: Use Replacement serialization from clang::tooling
Serialization of replacements has been moved to clang::tooling.

Differential Revision: http://llvm-reviews.chandlerc.com/D1423

llvm-svn: 188820
2013-08-20 19:20:52 +00:00
Jim Grosbach 71a78f962b ARM: Fix fast-isel copy/paste-o.
Update testcase to be more careful about checking register
values. While regexes are general goodness for these sorts of
testcases, in this example, the registers are constrained by
the calling convention, so we can and should check their
explicit values.

rdar://14779513

llvm-svn: 188819
2013-08-20 19:12:42 +00:00
Edwin Vane d7e2278f6c Adding Replacement serialization support
Adding a new data structure for storing the Replacements generated for a single
translation unit. Structure contains a vector of Replacements as well a field
indicating the main source file of the translation unit. An optional 'Context'
field allows for tools to provide any information they want about the context
the Replacements were generated in. This context is printed, for example, when
detecting conflicts during Replacement deduplication.

YAML serialization for this data structure is implemented in this patch. Tests
are included.

Differential Revision: http://llvm-reviews.chandlerc.com/D1422

llvm-svn: 188818
2013-08-20 19:07:21 +00:00
Rafael Espindola db0fcfbfae Centralize the logic for handling -m* options and fix pr16943.
This moves the logic for handling -mfoo -mno-foo from the driver to -cc1. It
also changes -cc1 to apply the options in order, fixing pr16943.

The handling of -mno-mmx -msse is now an explicit special case.

llvm-svn: 188817
2013-08-20 18:57:55 +00:00
Fariborz Jahanian 9427939f65 ObjectiveC migrator: More tweaking of heuristics
for an audited cf function and addition of
a test case.

llvm-svn: 188816
2013-08-20 18:54:39 +00:00
Andrew Kaylor 00b8fe583d Still more MCJIT PIC test XFAILs
llvm-svn: 188815
2013-08-20 18:13:48 +00:00
Andrew Kaylor c20ace87fa Clarifying two MCJIT PIC tests as XFAIL on i686-pc-linux
llvm-svn: 188814
2013-08-20 17:01:35 +00:00
Marshall Clow 890d1ee469 Updated status of issues #2093, 2144, and 2185
llvm-svn: 188813
2013-08-20 16:59:06 +00:00
Andrew Kaylor fae66f2aa8 Removing duplicate XFAIL markers
llvm-svn: 188812
2013-08-20 16:42:22 +00:00
Marshall Clow 8a79e1d053 Updated status and description of issues 2064, 2069 and 2096.
llvm-svn: 188811
2013-08-20 16:24:55 +00:00
Marshall Clow a0393ce271 Updated status of issues #2028, 2047, and 2053.
llvm-svn: 188810
2013-08-20 16:18:29 +00:00
Hafiz Abid Qadeer 7b7b4ca676 To test commit access.
llvm-svn: 188809
2013-08-20 16:07:44 +00:00
Andrew Kaylor cf90777cd0 Marking two more MCJIT PIC tests as XFAIL on i686
llvm-svn: 188808
2013-08-20 15:47:04 +00:00
Andrew Kaylor e35613b962 Marking MCJIT PIC tests as XFAIL on arm
llvm-svn: 188807
2013-08-20 15:36:04 +00:00
Rafael Espindola a38ce29576 Remove duplicated error checking.
The driver validates its options, so we don't need to redo the work in
"clang -cc1".

llvm-svn: 188806
2013-08-20 15:30:32 +00:00
Alexey Samsonov a272b78879 [LSan] Add support for building standalone LSan runtime to Make build (clang part)
llvm-svn: 188805
2013-08-20 14:49:36 +00:00
Alexey Samsonov 287fca44af [LSan] Add support for building standalone LSan runtime to Make build (compiler-rt part)
llvm-svn: 188804
2013-08-20 14:49:01 +00:00
Marshall Clow e06e3ac7d5 Updated status of issues #1214, 2207 and 2209. They were already implemented, so no functionality change was needed.
llvm-svn: 188803
2013-08-20 14:21:16 +00:00
Rafael Espindola d9401d664b Remove dead code.
llvm-svn: 188802
2013-08-20 14:18:24 +00:00
Ed Maste a6b4c77123 Include checksum in non-ack mode
Patch from Abid, Hafiz.

llvm-svn: 188801
2013-08-20 14:12:58 +00:00
NAKAMURA Takumi 166b874696 UniqueHeaderNameTest.cpp: Appease valgrind.
llvm::sys::path::native(dst, dst) might be overridden-safe in most cases, though.

llvm-svn: 188800
2013-08-20 14:02:38 +00:00
Rafael Espindola e62e279f97 Refactor the x86 feature handling.
This removes the very long chains of
Feature["avx"] = Feature["sse42"] = ... = true;

llvm-svn: 188799
2013-08-20 13:44:29 +00:00
Vladimir Medic 9bad0d33b6 Fix style issues in AsmParser.cpp
llvm-svn: 188798
2013-08-20 13:33:18 +00:00
Tim Northover 244950d641 ARM: add test for last commit
This time I managed to forget the test.

Patch still by Stephen Kelly.

llvm-svn: 188797
2013-08-20 13:19:43 +00:00
Tim Northover b9facf72aa ARM: default to arm1176jzf-s for hard-float platforms.
It makes no sense to try and compile for arm7tdmi when we're targeting
something like gnueabihf. Although not strictly the most basic hardware
conceivable, I believe arm1176jzf-s is a reasonable compromise (that can always
be overridden explicitly if needed) since it's still in reasonably common use
unlike earlier cores.

Patch by Stephen Kelly.

llvm-svn: 188796
2013-08-20 13:13:38 +00:00
Guillaume Papin 1593c7b20a Revert "cpp11-migrate: Add a class to support include directives modifications"
This reverts commit r188791.

The Windows bots are still broken.

llvm-svn: 188795
2013-08-20 13:05:57 +00:00
Daniel Jasper 2b41a82e61 clang-format: Format enum struct/class like enum.
Patch by Joe Hermaszewski. Thank you!

llvm-svn: 188794
2013-08-20 12:42:50 +00:00
Daniel Jasper b55acad91c clang-format: Additional options for spaces around parentheses.
This patch adds four new options to control:
- Spaces after control keyworks (if(..) vs if (..))
- Spaces in empty parentheses (f( ) vs f())
- Spaces in c-style casts (( int )1.0 vs (int)1.0)
- Spaces in other parentheses (f(a) vs f( a ))

Patch by Joe Hermaszewski. Thank you for working on this!

llvm-svn: 188793
2013-08-20 12:36:34 +00:00
Benjamin Kramer 5e5e5a92b4 ARCMigrate depends on the static analyzer.
llvm-svn: 188792
2013-08-20 12:33:59 +00:00
Guillaume Papin f240481b99 cpp11-migrate: Add a class to support include directives modifications
The IncludeDirectives class helps with detecting and modifying #include
directives. For now it allows the users to add angled-includes in a source file.
This is a start for this class that will evolve in the future to add more
functionality.

This should fix the reverted commit r188610 (buildbot failures on Windows).

llvm-svn: 188791
2013-08-20 12:30:26 +00:00