Ted Kremenek
b4ebbc5a86
AnalysisManager can now be used to for analyses over TranslationUnits.
...
llvm-svn: 58766
2008-11-05 19:05:06 +00:00
Devang Patel
f53d7ff870
Add PR number.
...
llvm-svn: 58765
2008-11-05 18:41:15 +00:00
Evan Cheng
81889d010c
Restructure ARM code emitter to use instruction formats instead of addressing modes to determine how to encode instructions.
...
llvm-svn: 58764
2008-11-05 18:35:52 +00:00
Dan Gohman
ce2417f4e1
Use an assert to check that SelectCode isn't called on
...
nodes that are already selected.
llvm-svn: 58763
2008-11-05 18:30:52 +00:00
Sebastian Redl
6a43b1c435
A small error message improvement and some comment cleanup for static_cast.
...
llvm-svn: 58762
2008-11-05 17:54:26 +00:00
Dan Gohman
87002dbea1
The HadDelete field is no longer used.
...
llvm-svn: 58761
2008-11-05 17:35:14 +00:00
Dan Gohman
7a638a8c7e
Reintroduce a comment that was removed with the AddToISelQueue
...
changes.
llvm-svn: 58760
2008-11-05 17:16:24 +00:00
Dan Gohman
22079067e1
Update some comments to reflect the new code.
...
llvm-svn: 58759
2008-11-05 17:13:57 +00:00
Ted Kremenek
2855a93f07
initXXX methods can return owned objects
...
llvm-svn: 58758
2008-11-05 16:54:44 +00:00
Douglas Gregor
cfd8ddc6de
Keep track of whether a C++ class is an aggregate. Don't allow initialization of non-aggregates with initializer lists.
...
llvm-svn: 58757
2008-11-05 16:20:31 +00:00
Douglas Gregor
6f5431543a
Implement C++ copy-initialization for declarations. There is now some
...
duplication in the handling of copy-initialization by constructor,
which occurs both for initialization of a declaration and for
overloading. The initialization code is due for some refactoring.
llvm-svn: 58756
2008-11-05 15:29:30 +00:00
Richard Osborne
bfd58d87f3
Test commit, add Makefile for XCore target, more to follow.
...
llvm-svn: 58755
2008-11-05 09:53:58 +00:00
Duncan Sands
68035d4076
Fix thinko in ppcf128 expansion of truncating store.
...
llvm-svn: 58753
2008-11-05 07:17:27 +00:00
Evan Cheng
27889ab29f
Add more vector move low and zero-extend patterns.
...
llvm-svn: 58752
2008-11-05 06:04:51 +00:00
Evan Cheng
c7b04a12bb
Type of shuffle mask has changed.
...
llvm-svn: 58751
2008-11-05 06:04:18 +00:00
Evan Cheng
3cd5e8c97b
Indentation.
...
llvm-svn: 58750
2008-11-05 06:03:38 +00:00
Douglas Gregor
e8381c00eb
Initial implementation of parsing, semantic analysis, and AST-building
...
for constructor initializations, e.g.,
class A { };
class B : public A {
int m;
public:
B() : A(), m(17) { };
};
llvm-svn: 58749
2008-11-05 04:29:56 +00:00
Dan Gohman
f14b77ebf1
Eliminate the ISel priority queue, which used the topological order for a
...
priority function. Instead, just iterate over the AllNodes list, which is
already in topological order. This eliminates a fair amount of bookkeeping,
and speeds up the isel phase by about 15% on many testcases.
The impact on most targets is that AddToISelQueue calls can be simply removed.
In the x86 target, there are two additional notable changes.
The rule-bending AND+SHIFT optimization in MatchAddress that creates new
pre-isel nodes during isel is now a little more verbose, but more robust.
Instead of either creating an invalid DAG or creating an invalid topological
sort, as it has historically done, it can now just insert the new nodes into
the node list at a position where they will be consistent with the topological
ordering.
Also, the address-matching code has logic that checked to see if a node was
"already selected". However, when a node is selected, it has all its uses
taken away via ReplaceAllUsesWith or equivalent, so it won't recieve any
further visits from MatchAddress. This code is now removed.
llvm-svn: 58748
2008-11-05 04:14:16 +00:00
Dan Gohman
fd820528ab
Use getTargetConstant instead of getConstant for nodes that should not be visited
...
by isel and potentially forced into registers.
llvm-svn: 58747
2008-11-05 02:06:09 +00:00
Evan Cheng
132de1983f
Rename isGVLazyPtr to isGVNonLazyPtr relocation. This represents Mac OS X
...
indirect gv reference. Please don't call it lazy.
llvm-svn: 58746
2008-11-05 01:50:32 +00:00
Devang Patel
f04bfc6989
New test case.
...
llvm-svn: 58745
2008-11-05 01:40:30 +00:00
Devang Patel
f0ef35738c
Do now allow InlineAlways pass to remove dead functions.
...
llvm-svn: 58744
2008-11-05 01:39:16 +00:00
Devang Patel
e94321305f
Silence unused variable warnings.
...
llvm-svn: 58743
2008-11-05 01:37:40 +00:00
Devang Patel
7a848b0ee3
Check Attribute::NoInline.
...
llvm-svn: 58742
2008-11-05 01:37:05 +00:00
Bill Wendling
db045a3048
Remove dead variable.
...
llvm-svn: 58741
2008-11-05 00:56:35 +00:00
Bill Wendling
f1b4e2626b
Simplify the allocated size calculation.
...
llvm-svn: 58740
2008-11-05 00:54:27 +00:00
Bill Wendling
75e38fedc8
Fix comment
...
llvm-svn: 58739
2008-11-05 00:46:15 +00:00
Owen Anderson
26c10f1b4a
Use the new predicate to control when we do prealloc splitting. Fix a small bug.
...
llvm-svn: 58738
2008-11-05 00:32:13 +00:00
Evan Cheng
33ba5e78d2
Debugging output tweak.
...
llvm-svn: 58737
2008-11-05 00:22:28 +00:00
Oscar Fuentes
076e048cf7
CMake: updated list of source files.
...
llvm-svn: 58736
2008-11-05 00:11:22 +00:00
Bill Wendling
782e8346a5
Some code simplification. It now doesn't generate a prologue if the epilogue
...
isn't going to be generated.
llvm-svn: 58734
2008-11-05 00:00:21 +00:00
Dan Gohman
8cdea717a3
Add a new pass to simplify specific half_powr function calls. This is
...
a specialized pass that it not likely to be generally useful.
llvm-svn: 58732
2008-11-04 23:41:45 +00:00
Devang Patel
db9d785338
On darwin, 32-bit x86 target is i386-apple-darwin...
...
llvm-svn: 58731
2008-11-04 23:13:50 +00:00
Nuno Lopes
0460bb27e0
fix memory leak in pass manager when adding an analysis pass that already existed. as pass manager takes ownership of the added passes, it has to delete the pass if it isnt added to the pass list
...
tweak the opt tool so that it doesnt access a Pass after the ownership was taken by the pass manager
llvm-svn: 58730
2008-11-04 23:03:58 +00:00
Anton Korobeynikov
d6948315b7
Fix tests not to emit IR output
...
llvm-svn: 58729
2008-11-04 23:02:39 +00:00
Bill Wendling
d31fc54f34
Small simplification of the stack guard type.
...
llvm-svn: 58728
2008-11-04 22:54:43 +00:00
Bill Wendling
2f40956c68
- Add a "getOrInsertGlobal" method to the Module class. This acts similarly to
...
"getOrInsertFunction" in that it either adds a new declaration of the global
and returns it, or returns the current one -- optionally casting it to the
correct type.
- Use the new getOrInsertGlobal in the stack protector code.
- Use "splitBasicBlock" in the stack protector code.
llvm-svn: 58727
2008-11-04 22:51:24 +00:00
Owen Anderson
a926ed4b50
First pass at checking for the creation of a new join point when doing pre-alloc splitting. This is not turned on yet.
...
llvm-svn: 58726
2008-11-04 22:22:41 +00:00
Evan Cheng
e3827d9061
Actually ARM / Mac OS X does have UINTTOFP_I64_F{64|32} libcalls.
...
llvm-svn: 58725
2008-11-04 22:19:55 +00:00
Bill Wendling
64adc71e9a
Update in response to feedback from Chris:
...
- Use enums instead of magic numbers.
- Rework algorithm to use the bytes size from the target to determine when to
emit stack protectors.
- Get rid of "propolice" in any comments.
- Renamed an option to its expanded form.
- Other miscellanenous changes.
More changes will come after this.
llvm-svn: 58723
2008-11-04 21:53:09 +00:00
Gabor Greif
e5f9d67a68
fix two validation errors
...
llvm-svn: 58722
2008-11-04 21:50:59 +00:00
Gabor Greif
6b7bb1f127
fix typos, harmonize formatting
...
llvm-svn: 58721
2008-11-04 21:48:10 +00:00
Tanya Lattner
e842074c48
Revert 58687. This breaks mingw.
...
llvm-svn: 58719
2008-11-04 21:06:11 +00:00
Dale Johannesen
0a7b4f5800
Allow SROA of vectors. Removing this caused a
...
huge performance regression in something we care
about. This may not be final fix.
llvm-svn: 58718
2008-11-04 20:54:03 +00:00
Dale Johannesen
db6b956585
80 columns
...
llvm-svn: 58717
2008-11-04 20:52:49 +00:00
Cedric Venet
0ce19ba350
Update CMakeLists.txt
...
llvm-svn: 58716
2008-11-04 20:31:17 +00:00
Evan Cheng
297b32a367
Custom lower bit_convert i64 -> f64 into FMDRR. This is now happening with legalizetypes.
...
llvm-svn: 58714
2008-11-04 19:57:48 +00:00
Daniel Dunbar
40346506f1
Remove stray character.
...
llvm-svn: 58713
2008-11-04 18:44:31 +00:00
Tanya Lattner
81edfc172e
Add note about cmake. Patch by Oscar Fuentes.
...
llvm-svn: 58712
2008-11-04 18:40:27 +00:00
Ted Kremenek
2afad46626
Update Xcode project.
...
llvm-svn: 58711
2008-11-04 18:39:58 +00:00