Eric Christopher
26b8ac4b8c
Some cleanup and optimize fallthrough more.
...
llvm-svn: 130546
2011-04-29 21:56:31 +00:00
Fariborz Jahanian
99514b9168
block variables on lhs need be ir-gen'ed after the
...
rhs when its 'forwarding' pointer may be modified
in rhs evaluation as result of call to Block_copy.
// rdar://9309454
llvm-svn: 130545
2011-04-29 21:53:21 +00:00
Rafael Espindola
6a85f9b42e
Avoid some uses of .uleb128. This is a small speedup and more importantly
...
lets this code be used when producing assembly code for old assemblers without
uleb support.
llvm-svn: 130544
2011-04-29 21:50:57 +00:00
Rafael Espindola
6c961e1b75
Implement MCAsmStreamer::EmitCFIDefCfa.
...
llvm-svn: 130543
2011-04-29 21:41:06 +00:00
Devang Patel
84d7eb7252
Print new instructions without DebugLoc.
...
llvm-svn: 130542
2011-04-29 21:36:04 +00:00
Ted Kremenek
491da68ef9
Guard in USRGenerator::GenLoc() against null Decl* from invalid code.
...
llvm-svn: 130541
2011-04-29 21:35:23 +00:00
Eli Friedman
dd937843d3
Fix run-line, again. :(
...
llvm-svn: 130540
2011-04-29 21:33:03 +00:00
Eli Friedman
86caced370
Re-committing r130454, which does not in fact break anything.
...
Fix a rather obscure crash caused by ARM fast-isel generating code which redefines a register.
rdar://problem/9338332 .
llvm-svn: 130539
2011-04-29 21:22:56 +00:00
Chandler Carruth
f9e7410468
Disable -Wnon-pod-memset for now while I try to reduce the false
...
positives still further.
The plan is to:
1) Create a more targeted warning for memset of memory pointing at
a type with virtual methods or bases where a vptr would be
overwritten.
2) Consider turning the above warning back on by default.
3) Evaluate whether any false positives in the existing warning can be
detected and white listed in the warning implementation.
4) If #3 lowers the noise floor enough, enable the full warning in -Wall
or -Wextra.
Comments or suggestions welcome. Even more welcome are specific test
cases which trigger the warning and shouldn't.
llvm-svn: 130538
2011-04-29 20:58:14 +00:00
Devang Patel
c1f7c1d469
Preserve line number information.
...
llvm-svn: 130536
2011-04-29 20:38:55 +00:00
Ted Kremenek
2b2e06d1a3
Change -Wparentheses to not imply -Widiomatic-parentheses. Users rarely want to see these warnings, and often explicitly pass -Wparentheses.
...
llvm-svn: 130535
2011-04-29 20:30:39 +00:00
Eric Christopher
8d46b47787
Add trunc->branch support, this won't help with clang's i8->i1 truncations
...
for bools, but is a start.
llvm-svn: 130534
2011-04-29 20:02:39 +00:00
Johnny Chen
f1c95f8bcb
Update comments.
...
llvm-svn: 130533
2011-04-29 19:22:24 +00:00
Johnny Chen
31e4be06c4
Fix a bug introduced in my previous checkin, where the state was not properly
...
restored after parsing "SBTarget". Indentation matters in Python. :-)
llvm-svn: 130532
2011-04-29 19:19:13 +00:00
Johnny Chen
0f023fa4af
Add the Python rich comparison methods for SBBreakpoint, where GetID() returns
...
the breakpoint ID and provides the semantics needed for '==' and '!='. And
modify LLDBIteratorTestCase.lldb_iter_2() to use '==' between two SBBreakpoint's.
llvm-svn: 130531
2011-04-29 19:03:02 +00:00
Daniel Dunbar
080d98d3b2
win32: Include DataTypes.h instead of stdint.h to try and fix a Win32 build
...
issue.
llvm-svn: 130530
2011-04-29 18:58:57 +00:00
Daniel Dunbar
eeb2cbce80
Cleanup some DOS newlines.
...
llvm-svn: 130529
2011-04-29 18:58:55 +00:00
Peter Collingbourne
616044acd5
SimplifyCFG: Expose phi node folding cost threshold as command line parameter
...
llvm-svn: 130528
2011-04-29 18:47:38 +00:00
Peter Collingbourne
e3511e15e0
SimplifyCFG: Add CostRemaining parameter to DominatesMergePoint
...
llvm-svn: 130527
2011-04-29 18:47:31 +00:00
Peter Collingbourne
61f6602acd
SimplifyCFG: Add Trunc, ZExt and SExt to the list of cheap instructions for phi node folding
...
llvm-svn: 130526
2011-04-29 18:47:25 +00:00
Anders Carlsson
73ad5bc9ea
Serialize/deserialize the HasStandardLayout bit when writing/reading PCHs.
...
llvm-svn: 130525
2011-04-29 18:37:25 +00:00
Daniel Dunbar
72032861c6
MCAsmLayout: Add support for computing the symbol offset of variables. Not
...
currently used, because variables don't get reported as being "defined".
llvm-svn: 130524
2011-04-29 18:20:20 +00:00
Daniel Dunbar
bea7b93c88
MC: Change variable symbols to be recognized as defined, by assigning their sections based on FindAssociatedSection().
...
llvm-svn: 130523
2011-04-29 18:20:17 +00:00
Daniel Dunbar
b200f93125
MC/Mach-O: Update getSymbolAddress() to support evaluation of variables.
...
llvm-svn: 130522
2011-04-29 18:13:42 +00:00
Howard Hinnant
575d41ee92
Correction to set of overloaded pair constructors for C++0x
...
llvm-svn: 130521
2011-04-29 18:10:55 +00:00
Daniel Dunbar
29ba55cfe4
MC/Mach-O: Allow emission of relocations for variables in some more cases.
...
llvm-svn: 130520
2011-04-29 18:10:47 +00:00
Daniel Dunbar
b9c2b6c50d
MC/Mach-O: Find section ordinal's by looking at the symbol, instead of assuming they are present in a fragment.
...
llvm-svn: 130519
2011-04-29 18:07:43 +00:00
Devang Patel
124ae13421
Hoist MCLineEntry construction AsmPrinter so that anyone who derives from AsmPrinter can have line number entries.
...
PR 9810
llvm-svn: 130518
2011-04-29 18:00:54 +00:00
Daniel Dunbar
dc3e4cc5ed
MCExpr: Add FindAssociatedSection, which attempts to mirror the 'as' semantics
...
that associate sections with expressions.
llvm-svn: 130517
2011-04-29 18:00:03 +00:00
Daniel Dunbar
252e8f9ac1
Driver/cc1as: Forward -mllvm arguments when compiling assembly files.
...
llvm-svn: 130516
2011-04-29 17:53:18 +00:00
Daniel Dunbar
1bf128eaeb
MC/AsmParser: Generalize a check.
...
llvm-svn: 130515
2011-04-29 17:53:11 +00:00
Douglas Gregor
dd8061e09f
Fix a C++0x portability issue with std::make_pair. Explicitly providing template arguments no longer works when the call arguments are lvalues.
...
llvm-svn: 130513
2011-04-29 16:57:12 +00:00
Douglas Gregor
6c38001ec5
Qualify calls to std::next(), to avoid conflicts with
...
libraries/applications that define their own 'next' template.
llvm-svn: 130511
2011-04-29 16:20:26 +00:00
Douglas Gregor
0e50682f26
Include <pthread.h> before we use pthread_self/pthread_kill
...
llvm-svn: 130510
2011-04-29 16:12:17 +00:00
Charles Davis
6c488f14f6
Remove comments about __int8 and friends from the mangler. Turns out we don't
...
actually have to implement them, since in modern versions of MSVC they're
aliases to the standard C types.
llvm-svn: 130509
2011-04-29 15:50:52 +00:00
Douglas Gregor
f1fce5d3ef
White-list yet more type trait names, since they're used as
...
identifiers in libc++.
llvm-svn: 130508
2011-04-29 15:31:39 +00:00
Rafael Espindola
1fc5bf9fc5
The last hack for producing bit identical output with cfi on OS X.
...
llvm-svn: 130504
2011-04-29 15:09:53 +00:00
Rafael Espindola
697edc89a5
Change DwarfCFIException's member variables to track what it actually
...
emmits: .cfi_personality, .cfi_lsda and the moves.
llvm-svn: 130503
2011-04-29 14:48:51 +00:00
Andrew Trick
e794e17524
Teach Thumb2 isel to fold and->rotr ==> ROR.
...
Generalization of Nate Begeman's patch!
llvm-svn: 130502
2011-04-29 14:18:15 +00:00
Rafael Espindola
b7a012a282
Factor some code to needsCFIMoves. Avoid printing moves when we don't have to.
...
llvm-svn: 130501
2011-04-29 14:14:06 +00:00
David Chisnall
10d2ded910
Don't crash if the AST doesn't have a sensible ObjC id type.
...
llvm-svn: 130500
2011-04-29 14:10:35 +00:00
Benjamin Kramer
6708499b6d
This is done.
...
llvm-svn: 130499
2011-04-29 14:09:57 +00:00
Andrew Trick
65266ed4d7
Combine thumb2-ror tests.
...
llvm-svn: 130498
2011-04-29 14:02:41 +00:00
NAKAMURA Takumi
2277ab2ae6
docs/doxygen.css: Tweak padding on memdoc.
...
llvm-svn: 130493
2011-04-29 09:59:12 +00:00
Chandler Carruth
c37485e6cb
Relax the non-POD memset warning to use the less restrictive C++11
...
definition of POD. Specifically, this allows certain non-aggregate
types due to their data members being private.
The representation of C++11 POD testing is pretty gross. Any suggestions
for improvements there are welcome. Especially the name
'isCXX11PODType()' seems truly unfortunate.
llvm-svn: 130492
2011-04-29 09:46:08 +00:00
Francois Pichet
c867975776
r130381 follow up: accept __uuidof expression for template argument reference.
...
llvm-svn: 130491
2011-04-29 09:08:14 +00:00
Francois Pichet
dbad1d1599
Unbreak the MSVC build:
...
- unistd.h doesn't exist with MSVC
- inline must be __inline in Microsoft C
- atexit cannot take a function declared as void f(), must be void f(void).
llvm-svn: 130490
2011-04-29 08:56:07 +00:00
Benjamin Kramer
f0e3f04470
Balance parentheses.
...
llvm-svn: 130489
2011-04-29 08:41:23 +00:00
Sebastian Redl
2ac2c725e0
Add a decl update when a static data member of a class template is instantiated in a different PCH than its containing class. Otherwise we get double definition errors. Fixes a Boost.MPL problem that affects Boost.Accumulators and probably a lot more of Boost.
...
llvm-svn: 130488
2011-04-29 08:19:30 +00:00
Sebastian Redl
b00047a475
Use std::vector for ASTReader's ASTBuffers, instead of std::deque.
...
llvm-svn: 130487
2011-04-29 08:19:19 +00:00