Commit Graph

141924 Commits

Author SHA1 Message Date
Dmitry Vyukov 0ced85a8c7 asan/tsan: fix pwrite interceptors
llvm-svn: 173328
2013-01-24 07:44:21 +00:00
Dmitry Vyukov e9a44974d4 tsan: also test asan during presubmit checks, because sanitizer_common changes can affect it
llvm-svn: 173327
2013-01-24 07:43:55 +00:00
NAKAMURA Takumi 7a23231e6b clang/test/Modules/global_index.m: XFAILing on win32 when investigating for now.
llvm-svn: 173326
2013-01-24 07:04:14 +00:00
NAKAMURA Takumi bf8f207519 MipsISelLowering.cpp: Fill unreachable paths to fix warnings. [-Wsometimes-uninitialized]
FIXME: Could they, unreachable(s), be removed?
FIXME: I could prefer the coding standards...
llvm-svn: 173325
2013-01-24 06:08:06 +00:00
NAKAMURA Takumi f25b7c6816 MipsISelLowering.cpp: Fix a warning, take two. [-Wunused-variable]
...and fix a typo, s/#ifdef/#ifndef/

llvm-svn: 173324
2013-01-24 05:54:23 +00:00
NAKAMURA Takumi c77d028bfb MipsISelLowering.cpp: Fix a warning. [-Wunused-variable]
llvm-svn: 173323
2013-01-24 05:47:29 +00:00
Craig Topper 3529aa5fc2 Remove trailing whitespace.
llvm-svn: 173322
2013-01-24 05:22:40 +00:00
Richard Trieu 3ac907def8 Add asserts to SmallVector so that calls to front() and back() only succeed
if the vector is not empty.  This will ensure that calls to these functions
will reference elements in the vector.

llvm-svn: 173321
2013-01-24 04:29:24 +00:00
Reed Kotler a2d76bce1f The next phase of Mips16 hard float implementation.
Allow Mips16 routines to call Mips32 routines that have abi requirements
that either arguments or return values are passed in floating point 
registers. This handles only the pic case. We have not done non pic
for Mips16 yet in any form.

The libm functions are Mips32, so with this addition we have a complete
Mips16 hard float implementation.

We still are not able to complete mix Mip16 and Mips32 with hard float.
That will be the next phase which will have several steps. For Mips32
to freely call Mips16 some stub functions must be created.

llvm-svn: 173320
2013-01-24 04:24:02 +00:00
Nick Lewycky 4db15f5101 Give warn_redecl_library_builtin a flag name: -Wincompatible-library-redeclaration.
llvm-svn: 173319
2013-01-24 03:43:15 +00:00
Andrew Trick 92da42406e MachineScheduler: enable biasCriticalPath for all DAGs.
llvm-svn: 173318
2013-01-24 02:09:57 +00:00
Andrew Trick d3b8629a53 MIsched: Added biasCriticalPath.
Allow schedulers to order DAG edges by critical path. This makes
DFS-based heuristics more stable and effective.

llvm-svn: 173317
2013-01-24 02:09:55 +00:00
Michael J. Spencer 0f515f898e [ELF] Add R_X86_64_IRELATIVE.
llvm-svn: 173316
2013-01-24 02:08:25 +00:00
Nick Lewycky d24d5f2b79 Start checking nonnull (as well as format and argument_with_type_tag) on
overloaded binary operators.

llvm-svn: 173315
2013-01-24 02:03:08 +00:00
Nick Lewycky e112151a35 Fix some wonky formatting, remove spurious emacs major mode marker. No
functionality change!

llvm-svn: 173314
2013-01-24 01:12:16 +00:00
Bill Wendling 39a4c80570 Add a profile for uniquifying the AttributeSet with the AttributeSetNodes.
llvm-svn: 173313
2013-01-24 01:01:34 +00:00
Bill Wendling 164a4fbb5b Cleanup the AttributeSetNodes that we create.
llvm-svn: 173311
2013-01-24 00:14:46 +00:00
Bill Wendling d2e493bb65 Create a new class: AttributeSetNode.
This is a helper class for the AttributeSetImpl class. It holds a set of
attributes that apply to a single element: function, return type, or
parameter.

These are uniqued.

llvm-svn: 173310
2013-01-24 00:06:56 +00:00
Richard Smith be8229c8c0 Micro cleanup: use an array of const char, rather than an array of char, as the
type of the string literal implicitly used for a raw user-defined literal call.
No test; this has no semantic impact.

llvm-svn: 173309
2013-01-23 23:38:20 +00:00
Jim Ingham 8bebe00a24 Check for NULL breakpoint option thread name & queue name before comparing their values to the new value.
<rdar://problem/13065198>

llvm-svn: 173308
2013-01-23 23:14:13 +00:00
Bill Wendling 8879c43a53 Don't check lines beginning with '#', since they could contain a path with the unexpected word in them.
llvm-svn: 173307
2013-01-23 23:07:21 +00:00
Bill Wendling 1f631645f8 Don't check lines beginning with '#', since they could contain a path with the unexpected word in them.
llvm-svn: 173306
2013-01-23 23:06:28 +00:00
Bill Wendling 958d8f2fcd The diagnostic is now a warning instead of an error. Also don't check lines beginning with '#', since they could contain a path with the unexpected word in them.
llvm-svn: 173305
2013-01-23 23:04:29 +00:00
Bill Wendling 6442a974b7 Push down the conversion of the alignment from the bit mask to a real number into the attribute implementation class.
llvm-svn: 173304
2013-01-23 23:00:05 +00:00
Douglas Gregor 8ec343ccb1 Fix for case-sensitive file systems. Ugh
llvm-svn: 173303
2013-01-23 22:45:24 +00:00
Bill Wendling 9de4b973f1 Remove dead methods.
llvm-svn: 173302
2013-01-23 22:38:33 +00:00
Douglas Gregor 5e306b1233 Implement the writer side of the global module index.
The global module index is a "global" index for all of the module
files within a particular subdirectory in the module cache, which
keeps track of all of the "interesting" identifiers and selectors
known in each of the module files. One can perform a fast lookup in
the index to determine which module files will have more information
about entities with a particular name/selector. This information can
help eliminate redundant lookups into module files (a serious
performance problem) and help with creating auto-import/auto-include
Fix-Its.

The global module index is created or updated at the end of a
translation unit that has triggered a (re)build of a module by
scraping all of the .pcm files out of the module cache subdirectory,
so it catches everything. As with module rebuilds, we use the file
system's atomicity to synchronize.

llvm-svn: 173301
2013-01-23 22:38:11 +00:00
Nick Kledzik 36293f6512 Add SectionPosition and OrderPass
llvm-svn: 173300
2013-01-23 22:32:56 +00:00
Michael J. Spencer 563d33a6f1 [ELF] Read IFUNC symbols correctly as typeResolver.
llvm-svn: 173299
2013-01-23 22:08:46 +00:00
Eli Bendersky 4f2162f8f8 Fix small typo
llvm-svn: 173298
2013-01-23 22:05:19 +00:00
Tom Stellard 6f1b8657f9 R600: Add a llvm.R600.store.swizzle intrinsics
This intrinsic is translated to ALLOC_EXPORT_WORD1_SWIZ, hence its
name. It is used to store vs/fs outputs

Patch by: Vincent Lejeune

Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 173297
2013-01-23 21:39:49 +00:00
Tom Stellard d8ac91d436 R600: Simplify stream outputs intrinsic
Patch by: Vincent Lejeune

Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 173296
2013-01-23 21:39:47 +00:00
Ted Kremenek aa300017e1 Add a test case for 'analyzer_noreturn' on category methods.
llvm-svn: 173295
2013-01-23 21:29:13 +00:00
Ted Kremenek 15b47bc872 Always process an index.html file if we have HTML output. Patch by Justin Bogner.
llvm-svn: 173294
2013-01-23 21:22:14 +00:00
Benjamin Kramer 546bb56278 ConstantFolding: Tweak r173289, it should evaluate in the intptr type, not the index type.
llvm-svn: 173293
2013-01-23 21:21:24 +00:00
Ted Kremenek 5b4500b43a Add missing null check. Not sure why my tests passed before.
llvm-svn: 173292
2013-01-23 21:12:49 +00:00
Ted Kremenek 54cd3c6811 Honor attribute 'analyzer_noreturn' on Objective-C methods.
This isn't likely a full solution, but it catches the common cases
and can be refined over time.

Fixes <rdar://problem/11634353>.

llvm-svn: 173291
2013-01-23 21:00:27 +00:00
Daniel Jasper 39e2738c8b Add extra indent for nested calls inside if's.
Before:
if (aaaaaaaaaa(
    aaaaaaaaaa)) {}

After:
if (aaaaaaaaaa(
        aaaaaaaaaa)) {}

llvm-svn: 173290
2013-01-23 20:41:06 +00:00
Benjamin Kramer d9c3dabbba ConstantFolding: Evaluate GEP indices in the index type.
This fixes some edge cases that we would get wrong with uint64_ts.
PR14986.

llvm-svn: 173289
2013-01-23 20:41:05 +00:00
Richard Osborne 54e311821f Add instruction encodings / disassembly support for l6r instructions.
llvm-svn: 173288
2013-01-23 20:08:11 +00:00
Michael J. Spencer c0d3c4efe6 Add PassManager.
It owns and manages passes.

llvm-svn: 173287
2013-01-23 20:03:10 +00:00
Dmitri Gribenko 6c926ccbd2 Implement -Wvla correctly
GCC implements -Wvla as "warn on every VLA" (this is useful to find every VLA,
for example, if they are forbidden by coding guidelines).  Currently Clang
implements -Wvla as "warn on VLA when it is an extension".

The attached patch makes our behavior match GCC.  The existing vla extwarn is
moved under -Wvla-extension and is still included into -Wgnu.

This fixes PR5953.

llvm-svn: 173286
2013-01-23 20:02:51 +00:00
Chad Rosier 49544b36f7 Initialize SSPBufferSize. PR14999. Patch by Vinson Lee.
llvm-svn: 173285
2013-01-23 19:32:37 +00:00
Bill Wendling e8fa95f628 Remove unused methods and ivars.
llvm-svn: 173284
2013-01-23 19:06:01 +00:00
Douglas Gregor bfd73d74b9 Factor the trait for lookup into the on-based hash table of
identifiers into two parts: the part that involves dealing with the
key (which can be re-used) and the ASTReader-specific part that
creates the IdentifierInfos. While I'm at it, StringRef'ify this code,
which was using pair<const char*, unsigned>. No functionality change.

llvm-svn: 173283
2013-01-23 18:53:14 +00:00
Sean Silva cc8fbbf129 docs: clear up ambiguity
Anybody using clang is a "developer".

llvm-svn: 173282
2013-01-23 18:28:48 +00:00
Argyrios Kyrtzidis 1ffbc3a92a [PCH] Temporarily disable the "ambiguous macro" warning that is currently bogus with a PCH
that redefined a macro without undef'ing it first.

Proper reconstruction of the macro info history from modules will properly fix this in subsequent commits.

rdar://13016031

llvm-svn: 173281
2013-01-23 18:21:56 +00:00
Dmitri Gribenko 18d8a461e5 Documentation: add a note that -cc1 options are not guaranteed to be stable
llvm-svn: 173280
2013-01-23 18:02:28 +00:00
Benjamin Kramer e4c46fec73 Revert "InstCombine: Clean up weird code that talks about a modulus that's long gone."
This causes crashes during the build of compiler-rt during selfhost. Add a
testcase for coverage.

llvm-svn: 173279
2013-01-23 17:52:29 +00:00
Dmitri Gribenko d15bb30dba libclang: change return type of getCursorDecl() to 'const Decl *'
llvm-svn: 173278
2013-01-23 17:25:27 +00:00