Commit Graph

102214 Commits

Author SHA1 Message Date
Ted Kremenek 4bb6c6b37e static analyzer: Fix use-after-free bug in RegionStore involving LazyCompoundValueData not reference counting Store objects.
llvm-svn: 127288
2011-03-08 23:18:00 +00:00
Jakob Stoklund Olesen ea5ebfed15 Delete dead code after rematerializing.
LiveRangeEdit::eliminateDeadDefs() will eventually be used by coalescing,
splitting, and spilling for dead code elimination. It can delete chains of dead
instructions as long as there are no dependency loops.

llvm-svn: 127287
2011-03-08 22:46:11 +00:00
Greg Clayton e996fd30be LLDB now has "Platform" plug-ins. Platform plug-ins are plug-ins that provide
an interface to a local or remote debugging platform. By default each host OS
that supports LLDB should be registering a "default" platform that will be
used unless a new platform is selected. Platforms are responsible for things
such as:
- getting process information by name or by processs ID
- finding platform files. This is useful for remote debugging where there is 
  an SDK with files that might already or need to be cached for debug access.
- getting a list of platform supported architectures in the exact order they
  should be selected. This helps the native x86 platform on MacOSX select the
  correct x86_64/i386 slice from universal binaries.
- Connect to remote platforms for remote debugging
- Resolving an executable including finding an executable inside platform
  specific bundles (macosx uses .app bundles that contain files) and also
  selecting the appropriate slice of universal files for a given platform.

So by default there is always a local platform, but remote platforms can be
connected to. I will soon be adding a new "platform" command that will support
the following commands:
(lldb) platform connect --name machine1 macosx connect://host:port
Connected to "machine1" platform.
(lldb) platform disconnect macosx

This allows LLDB to be well setup to do remote debugging and also once 
connected process listing and finding for things like:
(lldb) process attach --name x<TAB>

The currently selected platform plug-in can now auto complete any available
processes that start with "x". The responsibilities for the platform plug-in
will soon grow and expand.

llvm-svn: 127286
2011-03-08 22:40:15 +00:00
Abramo Bagnara 6111db9e9c Fixed isEmbeddedInDeclarator flag loading.
llvm-svn: 127285
2011-03-08 22:33:38 +00:00
NAKAMURA Takumi 2201582115 test/Makefile: Reapply r127079, use $(ECHOPATH) to make lit.site.cfg(s).
llvm-svn: 127284
2011-03-08 22:17:40 +00:00
NAKAMURA Takumi d24228afeb libclang/CIndexer.cpp: Apply a new API for Cygwin-1.7, instead of deprecated one.
llvm-svn: 127283
2011-03-08 22:17:33 +00:00
Devang Patel fbb482b314 llvm.dbg.declare intrinsic does not use any llvm::Values. It's magic!
llvm-svn: 127282
2011-03-08 22:12:11 +00:00
Stuart Hastings e6fbe056b8 Reverting testcase at 4126896; r126672 broke something else. <rdar://problem/9055247>
llvm-svn: 127278
2011-03-08 21:54:17 +00:00
Bill Wendling c90ca36e29 Once again try to appease the buildbot gods.
llvm-svn: 127272
2011-03-08 21:36:29 +00:00
Nick Kledzik b611885ae6 <rdar://problem/9099747> fix use of SDKROOT
llvm-svn: 127270
2011-03-08 20:25:22 +00:00
Benjamin Kramer 128e9f0fe9 Strip cruft.
llvm-svn: 127269
2011-03-08 20:19:10 +00:00
Anders Carlsson 3c50aea73f Make the Objective-C checker look for subclasses of NSString instead of just NSString and NSMutableString.
llvm-svn: 127268
2011-03-08 20:05:26 +00:00
Eric Christopher eee5413f3b Add a testcase for r127263.
llvm-svn: 127266
2011-03-08 19:49:15 +00:00
Bill Wendling 2e1e1c1e36 Try to fix the compilation error due to type incombatibility.
llvm-svn: 127265
2011-03-08 19:39:35 +00:00
Jakob Stoklund Olesen 880e0b7760 Fix the build for MSVC 9 whose upper_bound() wants to compare elements in the sorted array.
Patch by Olaf Krzikalla!

llvm-svn: 127264
2011-03-08 19:37:54 +00:00
Eric Christopher 7238cba180 Fix some latent bugs if the nodes are unschedulable. We'd gotten away
with this before since none of the register tracking or nightly tests
had unschedulable nodes.

This should probably be refixed with a special default Node that just
returns some "don't touch me" values.

Fixes PR9427

llvm-svn: 127263
2011-03-08 19:35:47 +00:00
Stuart Hastings 8030932290 Stop building PPC parts on OSX. Radar 8637926.
llvm-svn: 127262
2011-03-08 19:28:28 +00:00
Oscar Fuentes a28879b824 Revert "Make a comparator's argument `const'. This fixes the build for
MSVC 9."

The "fix" was meaningless.

This reverts commit r127245.

llvm-svn: 127260
2011-03-08 19:26:21 +00:00
Douglas Gregor 95d3e370f4 Clarify the context in which an Objective-C type name is being parsed
by using an enumeration rather than a boolean value. No functionality
change.

llvm-svn: 127259
2011-03-08 19:17:54 +00:00
Jim Grosbach 14be61aeee Darwin 'as' silently ignores the '.ident' directive.
llvm-svn: 127258
2011-03-08 19:17:19 +00:00
Fariborz Jahanian 08891f5249 Warn on usage of unavailable objc 'class' in
varienty of cases. // rdar://9092208

llvm-svn: 127257
2011-03-08 19:12:46 +00:00
John McCall cd5d3ee8c4 Typo. Patch by arrowdodger.
llvm-svn: 127256
2011-03-08 18:01:22 +00:00
Benjamin Kramer b8ca01fff5 Reduce vector reallocations.
llvm-svn: 127254
2011-03-08 17:28:36 +00:00
Douglas Gregor f2f0806f71 Teach libclang's token-annotation logic about context-sensitive
keywords for Objective-C+ and C++0x. 

llvm-svn: 127253
2011-03-08 17:10:18 +00:00
Chris Lattner c7b48d40d4 fix incorrect comment.
llvm-svn: 127252
2011-03-08 16:59:03 +00:00
Abramo Bagnara ea94788cf4 Fixed source range for StaticAssertDecl and LinkageSpecDecl. Fixed source range for declarations using postfix types.
llvm-svn: 127251
2011-03-08 16:41:52 +00:00
Devang Patel e1aa67cff5 Since last couple of days, argument number is encoded using 8 bits from line number field in argument's debug info.
llvm-svn: 127250
2011-03-08 16:29:40 +00:00
Devang Patel fb30b85e7c Update DILexicalBlock doc to mention new fields.
llvm-svn: 127249
2011-03-08 16:25:29 +00:00
Anders Carlsson a426705cc6 When writing file references in a pch, make sure to ask the file manager for the absolute path.
llvm-svn: 127248
2011-03-08 16:04:35 +00:00
Benjamin Kramer 679cfb54ec X86: Fix the (saddo/ssub x, 1) -> incl/decl selection to check the right operand for 1.
Found by inspection.

llvm-svn: 127247
2011-03-08 15:20:20 +00:00
Justin Holewinski 42e9aaa4b1 PTX: Add intrinsic support for ntid, ctaid, and nctaid registers
llvm-svn: 127246
2011-03-08 14:10:18 +00:00
Oscar Fuentes 6ec5983a0c Make a comparator's argument `const'. This fixes the build for MSVC 9.
llvm-svn: 127245
2011-03-08 13:52:07 +00:00
Oscar Fuentes a693632dfd Remove remnant of my experimentation with CMake.
llvm-svn: 127244
2011-03-08 13:30:52 +00:00
Duncan Sands 7dc3d47c34 Fix PR9331. Simplified version of a patch by Jakub Staszak.
llvm-svn: 127243
2011-03-08 12:39:03 +00:00
Abramo Bagnara b5545be14b Fixed NamespaceDecl source range.
llvm-svn: 127242
2011-03-08 12:38:20 +00:00
NAKAMURA Takumi 5918457b5b lib/Support/regcomp.c: Fix cygwin warning.
llvm-svn: 127241
2011-03-08 12:25:29 +00:00
NAKAMURA Takumi 8506e4a1d6 Use $(ECHOPATH) to make llvm-lit from llvm-lit.in.
llvm-svn: 127240
2011-03-08 12:25:19 +00:00
NAKAMURA Takumi 0b26c3a674 Reapply r127073(partially): Introduce $(ECHOPATH) to print DOSish path string on MSYS bash for alternative of $(ECHO).
On mingw and python/w32, lit would not be expected to understand MSYS-style path.

llvm-svn: 127239
2011-03-08 12:25:10 +00:00
NAKAMURA Takumi 2b7eeb2b4b lib/Basic/Targets.cpp: mingw-w64 should define __MINGW32__, too.
llvm-svn: 127238
2011-03-08 12:06:46 +00:00
Abramo Bagnara 20c9e24241 Fixed bitfields source range.
llvm-svn: 127237
2011-03-08 11:07:11 +00:00
Bill Wendling 05334dad60 Testcase for r127187.
llvm-svn: 127236
2011-03-08 10:27:58 +00:00
John McCall 5c8f6c47c4 Emit block capture initializers as if they were normal initializers for a local
variable that just happens to be stored in a wierd place.

llvm-svn: 127235
2011-03-08 09:38:48 +00:00
John McCall 91ca10fe64 Extract a function to emit an arbitrary expression as if it were the initializer
for a local variable.

llvm-svn: 127227
2011-03-08 09:11:50 +00:00
Abramo Bagnara dff1930bf7 Fixed source range for all DeclaratorDecl's.
llvm-svn: 127225
2011-03-08 08:55:46 +00:00
Bill Wendling 45f470b86d Don't show commands.
llvm-svn: 127224
2011-03-08 08:34:49 +00:00
John Wiegley b4a9e51342 Removed trailing whitespace as a test commit
llvm-svn: 127223
2011-03-08 08:13:22 +00:00
John McCall 462c055d85 Fix my earlier commit to work with escaped newlines and leave breadcrumbs
in case we want to make a world where we can check intermediate instantiations
for this kind of breadcrumb.

llvm-svn: 127221
2011-03-08 07:59:04 +00:00
Nick Lewycky afc8098c9e Reorder comments to put them the right way around.
llvm-svn: 127220
2011-03-08 06:29:47 +00:00
John McCall ed14ad24e0 objc_gc wants a pointer type, not a function type; give it a more appropriate
diagnostic.  Also, these attributes are commonly written with macros which we
actually pre-define, so instead of expanding the macro location, refer to the
instantiation location and name it using the macro loc.

llvm-svn: 127219
2011-03-08 04:17:03 +00:00
Stephen Wilson d126c8cc5a Fix ObjectFileElf::GetEntryPointAddress()
ELF object files do not implicitly have a symbol named "start" as an entry
point.  For example, on Linux it is often named "_start", but can be trivially
set to any symbol by passing an --entry argument to the linker.

Use the ELF header to determine the entry point and resolve the associated
section based on that address.

Also, update the linux dynamic loader to call GetEntryPointAddress instead of
GetEntryPoint.

llvm-svn: 127218
2011-03-08 04:12:15 +00:00