Commit Graph

74923 Commits

Author SHA1 Message Date
Bill Wendling 9bea533c8e Remove dead store and simplify code.
llvm-svn: 92191
2009-12-28 01:53:00 +00:00
Bill Wendling 42bc7ad2b1 Remove dead store.
llvm-svn: 92190
2009-12-28 01:51:30 +00:00
Bill Wendling 5b8d89d0a2 Remove dead variable.
llvm-svn: 92189
2009-12-28 01:48:56 +00:00
Bill Wendling 9a62b467a8 Remove dead variable.
llvm-svn: 92188
2009-12-28 01:47:48 +00:00
Bill Wendling 798e1e6f71 Remove dead store.
llvm-svn: 92187
2009-12-28 01:44:39 +00:00
Bill Wendling 56631085ea Remove dead variable.
llvm-svn: 92186
2009-12-28 01:42:12 +00:00
Bill Wendling acde434d1a Remove dead variable.
llvm-svn: 92185
2009-12-28 01:41:12 +00:00
Bill Wendling 3179a89067 Remove dead variable.
llvm-svn: 92184
2009-12-28 01:36:02 +00:00
Bill Wendling ae606a1d1d Mark some debug variables as 'unused' to quiet compiler and analyzer.
llvm-svn: 92183
2009-12-28 01:34:57 +00:00
Bill Wendling 6ff71a1953 Remove dead store. The initial value was never used, but always overridden.
llvm-svn: 92182
2009-12-28 01:31:11 +00:00
Bill Wendling b8d960d615 Add an "ATTRIBUTE_UNUSED" macro (and use it). It's for variables which are
mainly used in debugging and/or assert situations. It should make the compiler
and the static analyzer stop nagging us about them.

llvm-svn: 92181
2009-12-28 01:20:29 +00:00
Bill Wendling 846ca9b38b Remove dead variable.
llvm-svn: 92180
2009-12-28 01:02:21 +00:00
Bill Wendling ee5ca6e962 Remove dead variable.
llvm-svn: 92179
2009-12-28 01:01:14 +00:00
Bill Wendling 7da8f90d41 Remove dead variable.
llvm-svn: 92178
2009-12-28 01:00:12 +00:00
Eli Friedman affd5fdf37 Make sure to give an error for template argument lists followed by junk.
llvm-svn: 92177
2009-12-27 22:31:18 +00:00
Anton Korobeynikov 73d50b9141 Promote arguments of frameaddr / returnaddr builtins to i32 type, when needed.
This is needed for the platforms, where bitwidth of "int" is not 32 bits
(e.g. 16 on msp430).

llvm-svn: 92176
2009-12-27 14:27:22 +00:00
Eli Friedman 1e26278b3b Add a sanity assertion so that we don't silently generate bad code; I'll file
a bug with a testcase hitting this assertion in a moment.

llvm-svn: 92175
2009-12-27 07:02:50 +00:00
Eli Friedman e513c6af97 Fix runline.
llvm-svn: 92174
2009-12-27 05:59:41 +00:00
Eli Friedman 847a2bce04 Fix PointerExprEvaluator::VisitCastExpr so it doesn't misfold C++ casts which
it doesn't know how to fold, like derived-to-base casts.

llvm-svn: 92173
2009-12-27 05:43:15 +00:00
Eli Friedman af76ad73ed Fix obvious mistake.
llvm-svn: 92172
2009-12-27 03:44:17 +00:00
Sam Weinig 4e83bd2795 Fix for PR5872. Add static specifier and const/volatile qualifiers to member functions in __PRETTY_FUNCTION__ predefined expressions.
llvm-svn: 92171
2009-12-27 01:38:20 +00:00
Daniel Dunbar 54f330f342 Tests: Tweak LLVM-Code-Symbols test to ignore common and undefined symbols for
now, let's start small.

llvm-svn: 92170
2009-12-26 22:58:48 +00:00
Daniel Dunbar 2f57d9ad64 lit: Add setuptools support.
llvm-svn: 92169
2009-12-26 22:58:39 +00:00
Daniel Dunbar ea21448978 lit: Sink code into a 'lit' package.
llvm-svn: 92168
2009-12-26 22:58:23 +00:00
Eli Friedman ac6216d84c PR5886: Make sure IMUL32m is marked as setting EFLAGS, so scheduling doesn't
do illegal stuff around it.  No testcase because the issue is very fragile.

llvm-svn: 92167
2009-12-26 20:08:30 +00:00
Eli Friedman e14b1997db Don't look through casts when looking for the underlying decl for a function
call; the standard doesn't expect us to, and the program could be doing
something crazy.  Fixes PR5882.

llvm-svn: 92166
2009-12-26 03:35:45 +00:00
Eli Friedman 11c7b15148 Attempted fix for PR5884; this code will be dead soon, but this fix should
help for the moment.

llvm-svn: 92165
2009-12-25 23:59:21 +00:00
Daniel Dunbar b2138e5529 Driver: Use "g++" as generic gcc name when running in C++ mode, for platforms
that lack real tool definitions.

llvm-svn: 92164
2009-12-25 20:21:23 +00:00
Benjamin Kramer c06181b2a7 Make sure operator new[] and operator delete[] match. This will hopefully silence 3 remaining MSVC warnings.
llvm-svn: 92163
2009-12-25 17:06:27 +00:00
Benjamin Kramer d20ef75b91 Remove some dead variables clang-analyzer found.
llvm-svn: 92162
2009-12-25 15:43:36 +00:00
Bill Wendling 6ce6d268a6 Avoid assigning to Changed when it won't be used after the return.
llvm-svn: 92160
2009-12-25 13:50:18 +00:00
Bill Wendling ec030f2f01 Remove dead store.
llvm-svn: 92159
2009-12-25 13:45:50 +00:00
Bill Wendling 49fac47c83 Remove dead store from copy-pasto.
llvm-svn: 92158
2009-12-25 13:44:36 +00:00
Bill Wendling 8d1f801a01 Remove dead store.
llvm-svn: 92157
2009-12-25 13:39:58 +00:00
Bill Wendling ba27bef114 Remove dead store.
llvm-svn: 92156
2009-12-25 13:37:27 +00:00
Bill Wendling b45a3d8de4 Use the 'MadeChange' variable instead of returning 'false' all of the time.
llvm-svn: 92155
2009-12-25 13:35:40 +00:00
Benjamin Kramer a713b5d9a8 Fix typo spotted by MSVC.
GRExprEngine.cpp(1348) : warning C4305: 'argument' : truncation from 'clang::ProgramPoint::Kind' to 'bool'

llvm-svn: 92154
2009-12-25 09:44:02 +00:00
Eli Friedman b8841af8bd Minor optimization; emit proper unsupported messages for a couple of cases.
llvm-svn: 92153
2009-12-25 06:17:05 +00:00
Eli Friedman 2e06e8bbcc Some small improvements to dead code elimination; helps a bit on
LLVM-Code-Symbols test.

llvm-svn: 92152
2009-12-25 05:29:40 +00:00
Eli Friedman fddc26cc64 Make copy constructor elimination work in more cases; the case in question
here affects clang-on-clang.

llvm-svn: 92151
2009-12-24 23:33:34 +00:00
John McCall dd5044ac55 Implement support for converting to string at "natural precision", and fix some
major bugs in long-precision conversion.

llvm-svn: 92150
2009-12-24 23:18:09 +00:00
Sam Weinig 07d211ea40 Fix for PR5844. Be explicit about anonymous struct/class/union/namespaces in __PRETTY_FUNCTION__ predefined expression.
llvm-svn: 92149
2009-12-24 23:15:03 +00:00
Anders Carlsson fb404888af Move a bunch of class related functions to CGClass.cpp, no functionality change.
llvm-svn: 92148
2009-12-24 22:46:43 +00:00
Daniel Dunbar c19b219280 Sketch a simple new C++Tests suite for checking that llvm-gcc and clang generate
the same visible symbols, useful for finding ABI/Mangler/vtable/etc. issues.

llvm-svn: 92147
2009-12-24 21:27:38 +00:00
Douglas Gregor 4ee2cf658c Move the two definitions of operator<< into namespace llvm, so they
will be found by argument-dependent lookup. As with the previous
commit, GCC is allowing ill-formed code.

llvm-svn: 92146
2009-12-24 21:15:37 +00:00
Anders Carlsson bfb3671b25 Pass the return value slot to all call exprs.
llvm-svn: 92145
2009-12-24 21:13:40 +00:00
Douglas Gregor 1f21000902 Define the new operator<< for sets into namespace std, so that
argument-dependent lookup can find it. This is another case where an
LLVM bug (not making operator<< visible) was masked by a GCC bug
(looking in the global namespace when it shouldn't).

llvm-svn: 92144
2009-12-24 21:11:45 +00:00
Douglas Gregor 33636e66c7 Egregious, disgusting workaround for PR5866. We need to rework how we
keep track of friends within templates, which will provide a real for
PR5866. For now, this makes sure we don't do something entirely stupid
with friends of specializations.

llvm-svn: 92143
2009-12-24 20:56:24 +00:00
Anders Carlsson 1749083e2e Fill in the return value slot in CGExprAgg::VisitCallExpr. This takes us halfway towards fixing PR5824.
llvm-svn: 92142
2009-12-24 20:40:36 +00:00
Douglas Gregor 4b65441598 Add test case for PR5868, and improve location information slightly for implicit "this" expressions
llvm-svn: 92141
2009-12-24 20:23:34 +00:00