Ted Kremenek
8e780355b7
Remove invalid add_dependencies line to unbreak the CMake build.
...
llvm-svn: 81827
2009-09-15 04:06:36 +00:00
Mikhail Glushenkov
0adf07eb9e
Get rid of GetProcessId in Win32/Program.inc.
...
GetProcessId was introduced only in XP. As a bonus, this change makes Program
objects copyable, since Program is now basically a PID.
llvm-svn: 81826
2009-09-15 03:39:45 +00:00
Ted Kremenek
3413f277d0
Fix typo in comment.
...
llvm-svn: 81825
2009-09-15 03:28:00 +00:00
Chris Lattner
170c116aa7
merge one more in.
...
llvm-svn: 81824
2009-09-15 02:27:23 +00:00
Chris Lattner
42aaa6e443
merge some more cmov tests into cmov.ll
...
llvm-svn: 81823
2009-09-15 02:25:21 +00:00
Chris Lattner
baf78e5b52
merge two cmov tests into one.
...
llvm-svn: 81822
2009-09-15 02:22:47 +00:00
Dan Gohman
520a6856ba
Don't pull a load through a callseq_start if the load's chain
...
has multiple uses, as one of the other uses may be on a path
to a different node above the callseq_start, because that
leads to a cyclic graph. This problem is exposed when
-combiner-global-alias-analysis is used. This fixes PR4880.
llvm-svn: 81821
2009-09-15 01:22:01 +00:00
Ted Kremenek
27347135dd
Add static analyzer transfer function support for __builtin_offsetof.
...
llvm-svn: 81820
2009-09-15 00:40:32 +00:00
Nate Begeman
d41f8fd2b3
Remove incorrect CSE code from r81813.
...
llvm-svn: 81819
2009-09-15 00:38:09 +00:00
Sean Callanan
050e0cdb9a
Modified the Intel instruction tables to include
...
versions of CALL and JMP with segmented addresses
provided in-line, as pairs of immediates.
llvm-svn: 81818
2009-09-15 00:35:17 +00:00
Kevin Enderby
ccab317837
Added the first bits of the ARM target assembler to llvm-mc. For now it only
...
parses the .word directive as 4 bytes and ARMAsmParser::ParseInstruction will
give an error is called. Broke out the test of the .word directive into two
different test cases, one for x86 and one for arm.
llvm-svn: 81817
2009-09-15 00:27:25 +00:00
Nate Begeman
879d8f1c3e
Substantially speed up combiner-aa in the following ways:
...
1. Switch from an std::set to a SmallPtrSet for visited chain nodes.
2. Do not force the recursive flattening of token factor nodes, regardless of
use count.
3. Immediately process newly created TokenFactor nodes.
Also, improve combiner-aa by teaching it that loads to non-overlapping offsets
of relatively aligned objects cannot alias.
These changes result in a >5x speedup for combiner-aa on most testcases.
llvm-svn: 81816
2009-09-15 00:18:30 +00:00
Nate Begeman
01c1e1152d
Teach the legalizer to propagate the original alignment of loads and store when
...
it splits them.
llvm-svn: 81815
2009-09-15 00:14:28 +00:00
Dan Gohman
65829a4ccb
On x86-64, the 32-bit cmov doesn't actually clear the high 32-bit of
...
its result if the condition is false.
llvm-svn: 81814
2009-09-15 00:14:11 +00:00
Nate Begeman
02a685a914
Add an "original alignment" field to load and store nodes. This enables the
...
DAG Combiner to disambiguate chains for loads and stores of types which are
broken up by the Legalizer into smaller pieces.
llvm-svn: 81813
2009-09-15 00:13:12 +00:00
Fariborz Jahanian
19c7328881
Issue a good diagnostics when attempt to select
...
a type convesion function results in ambiguity.
llvm-svn: 81812
2009-09-15 00:10:11 +00:00
Chris Lattner
f8122966a9
clang tracks multiple levels of macro expansion
...
llvm-svn: 81811
2009-09-14 23:44:08 +00:00
Dan Gohman
f9eafce3af
When extending a memset range past the front, set the alignment of the
...
memset region to the alignment of the new start address.
llvm-svn: 81810
2009-09-14 23:39:10 +00:00
Nick Kledzik
ad160c0330
add conversion functions and test cases for ARM
...
llvm-svn: 81809
2009-09-14 23:26:56 +00:00
Anders Carlsson
3fa58d1f63
Diagnose taking the address of a bit-field inside a conditional operator.
...
llvm-svn: 81808
2009-09-14 23:15:26 +00:00
Douglas Gregor
6010da024c
Implement partial ordering of function templates when calling a
...
conversion function.
llvm-svn: 81807
2009-09-14 23:02:14 +00:00
Douglas Gregor
2e0807cd75
Slightly improve the test for partial ordering of overloaded function
...
templates.
llvm-svn: 81806
2009-09-14 22:31:20 +00:00
Douglas Gregor
48bc374d1e
Test function template partial ordering when resolving the address of
...
an overloaded function (template).
llvm-svn: 81804
2009-09-14 22:02:01 +00:00
Ted Kremenek
4112969df1
Fix: <rdar://problem/5905851> do not report a leak when post-dominated by a call
...
to a noreturn or panic function
llvm-svn: 81803
2009-09-14 22:01:32 +00:00
Anders Carlsson
2898af59dc
Update tests
...
llvm-svn: 81802
2009-09-14 22:00:20 +00:00
John McCall
27b5c253d8
Skeletal support for friend class templates.
...
llvm-svn: 81801
2009-09-14 21:59:20 +00:00
Erick Tryzelaar
b4e19177cb
Expose initializing the native target for the execution engine.
...
llvm-svn: 81800
2009-09-14 21:54:32 +00:00
Erick Tryzelaar
c8a18f97bb
Make sure to initialize the fpm in the ocaml tutorial.
...
llvm-svn: 81799
2009-09-14 21:54:15 +00:00
Daniel Dunbar
09d3362bf5
ARM/[A]APCS: Ignore empty records passed as arguments.
...
llvm-svn: 81798
2009-09-14 21:54:03 +00:00
Anders Carlsson
0e795ffbb0
For consistency, use "bit-field" instead of "bitfield" in our diagnostics.
...
llvm-svn: 81797
2009-09-14 21:48:24 +00:00
Evan Cheng
7f789596f3
Add early coalescing to liveintervals. This is work in progress and is known to miscompute some tests. Read it at your own rish, I have aged 10 year while writing this.
...
The gist of this is if source of some of the copies that feed into a phi join is defined by the phi join, we'd like to eliminate them. However, if any of the non-identity source overlaps the live interval of the phi join then the coalescer won't be able to coalesce them. The early coalescer's job is to eliminate the identity copies by partially-coalescing the two live intervals.
llvm-svn: 81796
2009-09-14 21:33:42 +00:00
Douglas Gregor
e1d2ef3508
Refactor MarkDeductedTemplateParameters into
...
MarkUsedTemplateParameters, which is able to mark template parameters
used within non-deduced contexts as well as deduced contexts. Use this
to finish the implementation of [temp.deduct.partial]p11.
llvm-svn: 81794
2009-09-14 21:25:05 +00:00
Bill Wendling
6dcc9d1b4b
Pull the creation of the "RewindFunction" function out of the loop. It's only
...
created once, so shouldn't be stuck in the middle of the loop. Also early exit
if there are no uses of UnwindInst in the function.
llvm-svn: 81785
2009-09-14 20:52:37 +00:00
Fariborz Jahanian
f4061e39a3
Used visible conversion function api to do overload
...
resolution of type conversion functions in base and
current class.
llvm-svn: 81784
2009-09-14 20:41:01 +00:00
Ted Kremenek
37a118520c
Implement FIXME: free up BugReportEquivClass objects when deleting BugTypes.
...
llvm-svn: 81783
2009-09-14 20:40:59 +00:00
Dan Gohman
1113741a03
Update a comment to match the source. PseudoSourceValues are now
...
obtained via accessor functions.
llvm-svn: 81782
2009-09-14 20:40:10 +00:00
Daniel Dunbar
0c33f44cd9
Force triple.
...
llvm-svn: 81781
2009-09-14 20:21:18 +00:00
Sam Weinig
b7608d7064
-Wchar-subscripts should not warn for explicit signed char subscripts either. Another fix for PR4978.
...
llvm-svn: 81780
2009-09-14 20:14:57 +00:00
Douglas Gregor
406f634df5
Tighten up checking of non-dependent arguments as part of template
...
argument deduction. This fixes the new test case (since partial
ordering does not have a "verify the results of deduction" step), and
will allow failed template argument deductions to return more quickly
for, e.g., matching class template partial specializations.
llvm-svn: 81779
2009-09-14 20:00:47 +00:00
David Chisnall
2997982ab4
Small fix to stop CGObjCGNU emitting symbols that break some versions of gas.
...
llvm-svn: 81778
2009-09-14 19:04:10 +00:00
Douglas Gregor
0ff7d92048
Implement partial ordering of function template specializations
...
(C++ [temp.func.order]).
llvm-svn: 81777
2009-09-14 18:39:43 +00:00
Sam Weinig
80cf843fe9
-Wchar-subscripts should not warn for unsigned char subscripts. Fixes PR4978.
...
llvm-svn: 81776
2009-09-14 18:17:16 +00:00
Sam Weinig
5be00aae4f
Remove duplicate definition of char-subscripts DiagGroup.
...
llvm-svn: 81775
2009-09-14 17:50:09 +00:00
Fariborz Jahanian
2243014431
Removed couple of FIXME comments from test case.
...
llvm-svn: 81774
2009-09-14 17:32:50 +00:00
Jim Grosbach
04f9d2e264
trivial whitespace cleanup
...
llvm-svn: 81773
2009-09-14 17:27:35 +00:00
Chris Lattner
dda095ec4a
add PR#
...
llvm-svn: 81770
2009-09-14 16:49:26 +00:00
Fariborz Jahanian
cb1c19147f
Using the property dot-syntax to invoke a non-eixsting
...
structure-valued setter should cause a user error instead of
crash.
llvm-svn: 81769
2009-09-14 16:40:48 +00:00
Eric Christopher
d8530f35f5
Enable the jit for llvm-config.
...
Patch by Xerxes Rånby!
llvm-svn: 81768
2009-09-14 16:38:49 +00:00
Daniel Dunbar
3f0dfbcf7a
Add a valgrind suppressions file for x86_64/linux/4.3.3.
...
llvm-svn: 81766
2009-09-14 16:10:32 +00:00
Daniel Dunbar
d200b758a5
Add a VALGRIND_EXTRA_ARGS makefile variable, with the obvious semantics.
...
llvm-svn: 81764
2009-09-14 15:27:43 +00:00