Jason Molenda
052a62c7fe
Bumping version to lldb-116.
...
llvm-svn: 151293
2012-02-23 22:34:01 +00:00
Jason Molenda
7e1f45f9c5
Make a nested if .. if .. else block nesting more explicit with some curly braces.
...
llvm-svn: 151292
2012-02-23 22:32:13 +00:00
Douglas Gregor
2d5aea0f25
Pull the OpaqueValueExpr's source expression into its constructor, so
...
that we can correctly compute value-dependence of the OVE.
llvm-svn: 151291
2012-02-23 22:17:26 +00:00
Jim Grosbach
ce398aa03b
Update test for r151288
...
llvm-svn: 151290
2012-02-23 22:12:53 +00:00
Michael J. Spencer
b560d079df
Emit global ctors into .CRT$XCU instead of .ctors on Win32. Patch by Joe Groff!
...
llvm-svn: 151289
2012-02-23 21:56:08 +00:00
Jim Grosbach
1d43ca99e2
ARM: enable the integrated assembler by default for Darwin.
...
llvm-svn: 151288
2012-02-23 21:55:04 +00:00
Anna Zaks
df901a4419
[analyzer] Malloc: unique leak reports by allocation site.
...
When we find two leak reports with the same allocation site, report only
one of them.
Provide a helper method to BugReporter to facilitate this.
llvm-svn: 151287
2012-02-23 21:38:21 +00:00
Anna Zaks
fa31b8ef10
[analyzer] Add CString checks to the release notes.
...
llvm-svn: 151286
2012-02-23 21:38:14 +00:00
Chad Rosier
6e220d5ad0
The LLVM Getting Started documentation is out of date. It would be nice if
...
someone could update this, but for now at least reference the Clang Getting
Started document, which is much more current.
llvm-svn: 151285
2012-02-23 21:23:24 +00:00
Benjamin Kramer
00b679c127
Bump SmallString to the minimum required amount for raw_ostream to avoid allocation.
...
It's is a bit annoying, we should hide this implementation detail better.
llvm-svn: 151284
2012-02-23 21:15:21 +00:00
Argyrios Kyrtzidis
2e85c5f297
[libclang] Make sure that all top-level decls in a @implementation are
...
marked as such.
Previously we missed tag declarations; fixes rdar://10902015
llvm-svn: 151283
2012-02-23 21:11:20 +00:00
Howard Hinnant
fdad25a40a
Insert a couple of dummy virtual functions to ease low level binary compatibility with other low level tools.
...
llvm-svn: 151282
2012-02-23 21:09:29 +00:00
Benjamin Kramer
92d7ff9d33
Replace a DenseSet with SmallPtrSet.
...
SmallSet of pointer is the same as SmallPtrSet, use the latter directly.
llvm-svn: 151281
2012-02-23 20:53:02 +00:00
Fariborz Jahanian
e5d9b0b8c8
Test is fixed.
...
llvm-svn: 151280
2012-02-23 20:43:56 +00:00
Roman Divacky
a2d3608f78
MCize function entry label emission on PowerPC64 properly.
...
llvm-svn: 151278
2012-02-23 20:28:39 +00:00
Fariborz Jahanian
1e2303379d
XFAIL test until I figure out how to make test pass on different platforms.
...
llvm-svn: 151277
2012-02-23 20:22:21 +00:00
Howard Hinnant
ebab2b0660
* tgmath_logb.patch implements the missing logb function (see C99 standard 7.22, paragraph 5). * tgmath_fabs_complex.patch corrects the return types for the complex fabs functions. These must be non-complex float/double/long double (see C99 standard 7.22, paragraph 4 and 7.3.8.1). Patch contributed by Kristof Beyls.
...
llvm-svn: 151276
2012-02-23 20:22:10 +00:00
Fariborz Jahanian
7cef65a3b6
Change test again so it passes in build-bot until I can figure out what is
...
going on.
llvm-svn: 151275
2012-02-23 20:07:38 +00:00
Benjamin Kramer
ef8bf39575
BitVectorize loop.
...
llvm-svn: 151274
2012-02-23 19:29:25 +00:00
Benjamin Kramer
796fd46993
post-ra-sched: Turn the KillIndices vector into a bitvector, it only stored two meaningful states.
...
Rename it to LiveRegs to make it more clear what's stored inside.
llvm-svn: 151273
2012-02-23 19:15:40 +00:00
Fariborz Jahanian
b96a293a59
fix test for patch in r151268.
...
llvm-svn: 151272
2012-02-23 18:57:03 +00:00
Enrico Granata
10afbe022d
typemaps to allow Python to invoke the new SBModule::GetVersion() API. Memory management is taken care of automatically so that Python users can simply say my_list = my_module.GetVersion() and receive a new list with the version numbers, if any, inside.
...
llvm-svn: 151271
2012-02-23 18:39:44 +00:00
Benjamin Kramer
c232b77556
Actually remove the duplicated elements from the vector.
...
llvm-svn: 151270
2012-02-23 18:35:56 +00:00
Benjamin Kramer
21974b1fa6
post-ra-sched: Replace a std::set of regs with a bitvector.
...
Assuming that a single std::set node adds 3 control words, a bitvector
can store (3*8+4)*8=224 registers in the allocated memory of a single
element in the std::set (x86_64). Also we don't have to call malloc
for every register added.
llvm-svn: 151269
2012-02-23 18:28:32 +00:00
Fariborz Jahanian
2f0de8bdb9
objective-c default synthesis. classes which adopt protocol properties
...
must still auto synthesize those propeties which have been redeclared
in the class. // rdar://10907410
llvm-svn: 151268
2012-02-23 18:21:25 +00:00
Kevin Enderby
6fbcd8d439
Updated the llvm-mc disassembler C API to support for the X86 target.
...
rdar://10873652
As part of this I updated the llvm-mc disassembler C API to always call the
SymbolLookUp call back even if there is no getOpInfo call back. If there is a
getOpInfo call back that is tried first and then if that gets no information
then the SymbolLookUp is called. I also made the code more robust by
memset(3)'ing to zero the LLVMOpInfo1 struct before then setting
SymbolicOp.Value before for the call to getOpInfo. And also don't use any
values from the LLVMOpInfo1 struct if getOpInfo returns 0. And also don't
use any of the ReferenceType or ReferenceName values from SymbolLookUp if it
returns NULL. rdar://10873563 and rdar://10873683
For the X86 target also fixed bugs so the annotations get printed.
Also fixed a few places in the ARM target that was not producing symbolic
operands for some instructions. rdar://10878166
llvm-svn: 151267
2012-02-23 18:18:17 +00:00
Brendon Cahoon
d5d166d4d4
Fix the numbering of some of the registers and reclassify a couple of them.
...
Also, some basic clean up. Patch by Evandro Menezes.
llvm-svn: 151266
2012-02-23 18:17:17 +00:00
Jakob Stoklund Olesen
a793a59fc3
Make calls scheduling boundaries post-ra.
...
Before register allocation, instructions can be moved across calls in
order to reduce register pressure. After register allocation, we don't
gain a lot by moving callee-saved defs across calls. In fact, since the
scheduler doesn't have a good idea how registers are used in the callee,
it can't really make good scheduling decisions.
This changes the schedule in two ways: 1. Latencies to call uses and
defs are no longer accounted for, causing some random shuffling around
calls. This isn't really a problem since those uses and defs are
inaccurate proxies for what happens inside the callee. They don't
represent registers used by the call instruction itself.
2. Instructions are no longer moved across calls. This didn't happen
very often, and the scheduling decision was made on dubious information
anyway.
As with any scheduling change, benchmark numbers shift around a bit,
but there is no positive or negative trend from this change.
This makes the post-ra scheduler 5% faster for ARM targets.
The secret motivation for this patch is the introduction of register
mask operands representing call clobbers. The most efficient way of
handling regmasks in ScheduleDAGInstrs is to model them as barriers for
physreg live ranges, but not for virtreg live ranges. That's fine
pre-ra, but post-ra it would have the same effect as this patch.
llvm-svn: 151265
2012-02-23 17:54:21 +00:00
Douglas Gregor
e5809a0aaf
Fix indentation
...
llvm-svn: 151264
2012-02-23 17:54:00 +00:00
Douglas Gregor
1fe7e90758
Note that lambda expressions are available in the release notes for 3.1
...
llvm-svn: 151263
2012-02-23 17:51:51 +00:00
Benjamin Kramer
077e55252a
Reflow code, no functionality change.
...
llvm-svn: 151262
2012-02-23 17:42:19 +00:00
Howard Hinnant
2d809ac734
And the handlers should be extern C.
...
llvm-svn: 151261
2012-02-23 17:25:34 +00:00
Jakob Stoklund Olesen
aae960d978
Make tests less sensitive to scheduling changes.
...
llvm-svn: 151260
2012-02-23 17:19:34 +00:00
Douglas Gregor
d153103c5a
Replace a use of hasTrivialDefaultConstructor() with the appropriate
...
isTrivial() call.
llvm-svn: 151259
2012-02-23 17:07:43 +00:00
Benjamin Kramer
3adbe1ca43
Replace some DenseSets with SmallPtrSets. Apart from the "small" optimization, the current implementation is also a denser.
...
llvm-svn: 151257
2012-02-23 16:06:01 +00:00
Howard Hinnant
49f28b5a47
I had originally made the handler function pointers a static internal detail, not accessible to the outside world. I did this because they must be accessed in a thread-safe manner, and the library provides thread-safe getters and setters for these. However I am at least temporarily making them public and giving them the Apple-extension names. In the future these may disappear again, and I think that would probably be a good idea.
...
llvm-svn: 151256
2012-02-23 15:32:07 +00:00
Benjamin Kramer
91c6b6a933
Unique CXXBasePath decls with the SmallVector/pod_sort/std::unique idiom instead of employing a wasteful std::set.
...
llvm-svn: 151255
2012-02-23 15:18:31 +00:00
Benjamin Kramer
6b441d62e9
Replace the std::map in the init list checker with a DenseMap to reduce malloc thrashing.
...
llvm-svn: 151254
2012-02-23 14:48:40 +00:00
Benjamin Kramer
d53aa39f46
Strip a layer of boilerplate from the VLIWPacketizer by storing the scheduler as an opaque pointer.
...
llvm-svn: 151252
2012-02-23 13:39:13 +00:00
Duncan Sands
a354d58f8d
Remove unused variable.
...
llvm-svn: 151251
2012-02-23 11:01:22 +00:00
Anton Korobeynikov
a22828e085
Fix to make sure that a comdat group gets generated correctly for a static member
...
of instantiated C++ templates.
Patch by Kristof Beyls!
llvm-svn: 151250
2012-02-23 10:36:04 +00:00
Jay Foad
585dda99f6
Update for the removal of Hashing.cpp.
...
llvm-svn: 151249
2012-02-23 09:33:44 +00:00
Jay Foad
529776c786
Reinstate r151049 now that GeneralHash is fixed.
...
llvm-svn: 151248
2012-02-23 09:17:40 +00:00
Jay Foad
5f77851a99
The implementation of GeneralHash::addBits broke C++ aliasing rules; fix
...
it with memcpy. This also fixes a problem on big-endian hosts, where
addUnaligned would return different results depending on the alignment
of the data.
llvm-svn: 151247
2012-02-23 09:16:04 +00:00
Craig Topper
243582995a
Remove 'if' from getSuperRegisters, getSubRegisters, and getOverlaps that were added in r151038.
...
llvm-svn: 151246
2012-02-23 08:42:06 +00:00
Richard Smith
c899892485
PR12067: When emitting an evaluated constant structure in C++11 mode, don't
...
forget the vptrs.
llvm-svn: 151245
2012-02-23 08:33:23 +00:00
Duncan Sands
f320be8521
An easy case where GCC should really be able to work out that the value is only
...
used if IsInDevelopmentTree is 'true'. But it doesn't, so help it out.
llvm-svn: 151244
2012-02-23 08:25:25 +00:00
Duncan Sands
1462633b40
GCC warns about a comparison between signed and unsigned values.
...
llvm-svn: 151243
2012-02-23 08:23:53 +00:00
Duncan Sands
4730cb9c7c
GCC fails to understand that NextBB is always initialized if EvaluateBlock
...
returns 'true' and emits a warning. Help it out.
llvm-svn: 151242
2012-02-23 08:23:06 +00:00
Douglas Gregor
6427a5ef01
Seriously, are injected-class-names that hard?
...
llvm-svn: 151241
2012-02-23 07:44:18 +00:00