Peter Collingbourne
640cdae167
Basic: add log2{,f,l}, round{,f,l} builtins
...
llvm-svn: 120136
2010-11-25 01:15:00 +00:00
Nick Lewycky
ef4f456866
Tie DefineVTablesUsed() in with recursive function instantiation so that we emit
...
a useful template instantiation stack. Fixes PR8640.
This also causes a slight change to where the "instantianted from" note shows up
in truly esoteric cases (see the change to test/SemaCXX/destructor.cpp), but
that isn't directly the fault of this patch.
llvm-svn: 120135
2010-11-25 00:35:20 +00:00
Anders Carlsson
19bda8af16
Remove the PrimaryBaseInfo class.
...
llvm-svn: 120134
2010-11-24 23:20:19 +00:00
Anders Carlsson
7f95cd1817
Rename RecordLayout::getPrimaryBaseWasVirtual to isPrimaryBaseVirtual.
...
llvm-svn: 120133
2010-11-24 23:12:57 +00:00
Anders Carlsson
cadbc463e2
Move code off the primary base info iterator. No functionality change.
...
llvm-svn: 120132
2010-11-24 23:04:03 +00:00
Anders Carlsson
5adde29d86
Use the newly added function in ASTRecordLayoutBuilder.
...
llvm-svn: 120131
2010-11-24 22:55:48 +00:00
Anders Carlsson
abb3b21b3b
Fix typo.
...
llvm-svn: 120130
2010-11-24 22:55:29 +00:00
Anders Carlsson
4131f00a1f
Add CXXRecordDecl::getIndirectPrimaryBases.
...
llvm-svn: 120129
2010-11-24 22:50:27 +00:00
Nick Lewycky
b8de00ee07
Treat a call of function pointer like a load of the pointer when considering
...
whether the pointer can be replaced with the global variable it is a copy of.
Fixes PR8680.
llvm-svn: 120126
2010-11-24 22:04:20 +00:00
Rafael Espindola
9f75d5df0b
Behave a bit more like gnu as and use the symbol (instead of the section)
...
for any relocation to a symbol defined in a tls section.
llvm-svn: 120121
2010-11-24 21:57:39 +00:00
Anders Carlsson
72b1968d92
Simplify code.
...
llvm-svn: 120118
2010-11-24 21:53:50 +00:00
Anders Carlsson
0c75b49dc1
Fix a (probably very old) regression where we weren't using the typedef name for anonymous tag types.
...
llvm-svn: 120113
2010-11-24 21:05:09 +00:00
Anders Carlsson
0e4dfebe63
Revert r120110. We don't want to call ConvertType from within getCGRecordLayout.
...
llvm-svn: 120112
2010-11-24 20:22:04 +00:00
Michael J. Spencer
26f628d57f
80 col.
...
llvm-svn: 120111
2010-11-24 20:07:14 +00:00
Anders Carlsson
449bbc5bde
Use ConvertType instead of ConvertTagDeclType, since ConvertType will assign a name to the type.
...
llvm-svn: 120110
2010-11-24 20:05:21 +00:00
Anders Carlsson
6277615cbb
Simplify code.
...
llvm-svn: 120109
2010-11-24 19:57:04 +00:00
Anders Carlsson
c5bcaa373b
Fix build.
...
llvm-svn: 120108
2010-11-24 19:52:29 +00:00
Anders Carlsson
63e0f2050f
Make CodeGenTypes::getCGRecordLayout compute the layout lazily if it doesn't exist. This matches ASTContext::getASTRecordLayout and is less confusing.
...
llvm-svn: 120107
2010-11-24 19:51:04 +00:00
Anders Carlsson
36e2fa8209
CGRecordLayout types are always struct types.
...
llvm-svn: 120106
2010-11-24 19:37:16 +00:00
Michael J. Spencer
02dd5544c4
google test depends on Support.
...
llvm-svn: 120105
2010-11-24 19:35:15 +00:00
Rafael Espindola
708ac4d6ad
Relocate with the symbol if the relocation is of kind NTPOFF.
...
Patch by David Meyer, I added the test.
llvm-svn: 120104
2010-11-24 19:23:50 +00:00
Michael J. Spencer
c33a41db85
unittests: Add initial Path-V2 test.
...
llvm-svn: 120103
2010-11-24 19:20:28 +00:00
Michael J. Spencer
96bcfcf2c2
Path Version 2.
...
Based on TR2/boost filesystem (v3) API, but modified to remove exceptions.
Do not include this file directly, when it is ready, it will be included by
include/llvm/System/Path.h.
llvm-svn: 120102
2010-11-24 19:20:19 +00:00
Michael J. Spencer
98847783f2
unittests: Add SystemTests.
...
llvm-svn: 120101
2010-11-24 19:20:05 +00:00
Rafael Espindola
e98d483b71
Fix and add tests for all cases in x86 and x86_64 where gnu as implicitly
...
sets the type of a symbol to STT_TLS.
llvm-svn: 120100
2010-11-24 18:51:21 +00:00
Rafael Espindola
af9a7a3e92
Testcase for r120017.
...
llvm-svn: 120099
2010-11-24 18:03:57 +00:00
Howard Hinnant
0c6a0fe7fb
Add template alias emulation to <ratio>
...
llvm-svn: 120098
2010-11-24 17:05:06 +00:00
Wesley Peck
8ad3b25633
Updating MBlaze .mask and .frame directives to match GCC's output and fixing regression introduced in 120095 by checking MCStreamer::hasRawTextSupport.
...
llvm-svn: 120097
2010-11-24 16:32:35 +00:00
Wesley Peck
51917b868d
1. Fixing error where basic block labels were not being printed out when they need to be for the MBlaze backend because AsmPrinter::isBlockOnlyReachableByFallthrough does not take into account delay slots.
...
2. Re-adding .mask and .frame directives in printed assembly.
3. Adding .ent and .end directives in printed assembly.
4. Minor cleanups to MBlaze backend.
llvm-svn: 120095
2010-11-24 15:39:32 +00:00
Zhongxing Xu
8be65a792f
When getting CXXThisRegion from CXXMethodDecl, use the qualifiers. This is
...
to be consistent with the type of 'this' expr in the method.
此行及以下内容将会被忽略--
M test/Analysis/method-call.cpp
M include/clang/Checker/PathSensitive/GRExprEngine.h
M lib/Checker/GRCXXExprEngine.cpp
llvm-svn: 120094
2010-11-24 13:48:50 +00:00
Zhongxing Xu
a1a9ba11b7
Let StackFrameContext represent if the call expr is evaluated as lvalue.
...
This is required for supporting const reference to temporary objects.
llvm-svn: 120093
2010-11-24 13:08:51 +00:00
Kalle Raiskila
e0a1d2b32c
Use i8 as SETCC result type for i1 in SPU.
...
llvm-svn: 120092
2010-11-24 12:59:16 +00:00
John McCall
f6d24ae091
Appease versions of GCC which don't correctly support injected class
...
names.
llvm-svn: 120091
2010-11-24 11:53:13 +00:00
Kalle Raiskila
97fc68774c
Allow for 'fcmp ogt' in SPU.
...
Fix by Visa Putkinen!
llvm-svn: 120090
2010-11-24 11:42:17 +00:00
John McCall
2a80a9e3d3
This is probably an important file.
...
llvm-svn: 120089
2010-11-24 11:30:07 +00:00
John McCall
9b66c4bbbe
Add -cc1 -ast-dump-xml, an excessively detailed XML dump of the internals
...
of the ASTs. Only available in assertions builds. No stability guarantee.
This is intended solely as a debugging tool. I'm not sure if the goals
are sufficiently aligned with the XML printer to allow a common
implementation.
Currently just falls back on the StmtDumper to display statements,
which means it doesn't produce valid XML in those cases.
llvm-svn: 120088
2010-11-24 11:21:45 +00:00
Zhongxing Xu
cb29802198
Use StackFrameContext directly in CallEnter program point. Then we don't need
...
to remake the stackframe everytime in GRExprEngine::ProcessCallEnter().
llvm-svn: 120087
2010-11-24 08:53:20 +00:00
Zhongxing Xu
9b6e6b087f
print asLValue attribute of CFGStmt.
...
llvm-svn: 120086
2010-11-24 06:33:02 +00:00
John McCall
086a464e24
Switch a lot of call-sites over to using the new value-kind calculations.
...
llvm-svn: 120084
2010-11-24 05:12:34 +00:00
Zhanyong Wan
e2ea8bf945
Improve comments in Clang static analyzer, based on kremenek's
...
explanation on how things work there. Reviewed by kremenek.
llvm-svn: 120081
2010-11-24 03:33:10 +00:00
Zhanyong Wan
b5d11c127a
Refactor AddStmtChoice to make it easier to use; also add comments on how the class works. Reviewed by kremenek.
...
llvm-svn: 120080
2010-11-24 03:28:53 +00:00
Francois Pichet
31ee8bfb0e
Fix 2 problems with Chris Lattner's FileManager redesign on Windows.
...
- FileEntry::operator= is needed on Win32.
- There was an error in the S_ISDIR() macro.
llvm-svn: 120079
2010-11-24 03:07:43 +00:00
Rafael Espindola
4e70ac7b68
If a symbol is used as tls, mark it as tls even if not declare as so. Probably
...
fixes PR8659.
llvm-svn: 120076
2010-11-24 02:19:40 +00:00
Zhanyong Wan
8e82c6372a
Add an assert() to catch errors using EvalLoad(). Reviewed by kremenek.
...
llvm-svn: 120073
2010-11-24 01:47:11 +00:00
NAKAMURA Takumi
cf3475172f
include/llvm/System/system_error.h: ECANCELED is undefined on Cygwin-1.5.
...
llvm-svn: 120072
2010-11-24 01:29:45 +00:00
Ted Kremenek
b3b56c6bcd
Adjust method calls to reflect name changes in
...
ImmutableSet/ImmtuableMap/ImmutableList APIs.
Along the way, clean up some method names in
the static analyzer so that they are more
descriptive and/or start with lowercase letters.
llvm-svn: 120071
2010-11-24 00:54:37 +00:00
Ted Kremenek
1ef52416c7
Tweak ImmutableMap/ImmutableSet/ImmutableList APIs
...
to use lowercase letters for the start of most
method names and to replace some method names
with more descriptive names (e.g., "getLeft()"
instead of "Left()"). No real functionality
change.
llvm-svn: 120070
2010-11-24 00:54:28 +00:00
Eli Friedman
9e7baae0c6
Unbreak clang-interpreter. (Should there be some automated testing for this?)
...
llvm-svn: 120069
2010-11-24 00:32:51 +00:00
Jakob Stoklund Olesen
00430319a8
Generalize overflowLeaf to also handle overflows in branch nodes.
...
This doesn't quite work yet because the calls to treeDecrement and treeIncrement
operate at the leaf level, not on pathNode(Level) as required.
llvm-svn: 120068
2010-11-24 00:03:32 +00:00
Chris Lattner
5ea7d07d2a
The final result of all this refactoring: instead of doing stat immediately
...
followed by an open for every source file we open, probe the file system with
'open' and then do an fstat when it succeeds. open+fstat is faster than
stat+open because the kernel only has to perform the string->inode mapping
once. Presumably it gets faster the deeper in your filesystem a lookup
happens.
For -Eonly on cocoa.h, this reduces system time from 0.042s to 0.039s on
my machine, a 7.7% speedup.
llvm-svn: 120066
2010-11-23 22:32:37 +00:00