Commit Graph

61067 Commits

Author SHA1 Message Date
Ted Kremenek 4533a55696 RegionStoreManager:
- Add "sections" to RegionStoreManager.cpp to delineate functionality.
- Add new function "CreateFieldsOnlyRegionStoreManager" that uses the new
  RegionStoreFeatures class to use a reduced set of features from
  RegionStoreManager (in this case, only field-sensitivity). This isn't
  completely hooked up yet.

llvm-svn: 73572
2009-06-16 22:36:44 +00:00
Douglas Gregor b4fd5b03c9 Make the clang executable target depend on clang-cc
llvm-svn: 73568
2009-06-16 22:26:26 +00:00
Chris Lattner 632bfb31c9 Fix the EE bindings to use the proper EE interfaces for creating a JIT.
Calling into createJIT directly creates a circular dependency between libjit and lib ee.

llvm-svn: 73567
2009-06-16 22:26:13 +00:00
Douglas Gregor 32f546b77e CMake: Only include LLVM example executables in the build if requested by the user
llvm-svn: 73566
2009-06-16 22:25:45 +00:00
Dale Johannesen b8a82ff218 Test for llvm-gcc patch 73564.
llvm-svn: 73565
2009-06-16 22:18:33 +00:00
Douglas Gregor 71544dba9d Don't warn about -Winvalid-pch or -Wno-invalid-pch. Since we don't
search for PCH files that correspond to header inclusions, this option
does not make sense. Fixes <rdar://problem/6970322>.

llvm-svn: 73563
2009-06-16 22:06:52 +00:00
Daniel Dunbar 2d5f363d6d Fix typo in prev commit.
llvm-svn: 73556
2009-06-16 21:46:01 +00:00
Daniel Dunbar 79c459932b Darwin/Driver: Also look at -arch command line options when finding the default
tool chain.

llvm-svn: 73555
2009-06-16 21:39:33 +00:00
Owen Anderson 79b76b5bea Accidentally broke this file.
llvm-svn: 73552
2009-06-16 20:57:51 +00:00
Owen Anderson 993e4261d0 Add newline at end of file.
llvm-svn: 73551
2009-06-16 20:53:09 +00:00
Owen Anderson 896cee711f Remove the Win32 implementation, since it doesn't compile pre-Vista.
llvm-svn: 73550
2009-06-16 20:49:20 +00:00
Ted Kremenek dc935e99e2 Add IOKit test cases for retain/release checker.
llvm-svn: 73549
2009-06-16 20:44:39 +00:00
Owen Anderson 8a1ff9eb41 Fix #include guards.
llvm-svn: 73548
2009-06-16 20:26:04 +00:00
Anton Korobeynikov 469e8217d4 Make the test target-neutral
llvm-svn: 73547
2009-06-16 20:25:25 +00:00
Owen Anderson 372a9289a5 Fix/cleanup trailing newlines.
llvm-svn: 73546
2009-06-16 20:23:05 +00:00
Owen Anderson 324f94c317 Add a portable wrapper for reader-writer locks.
llvm-svn: 73545
2009-06-16 20:19:28 +00:00
Douglas Gregor 274a6b4f2d Update Clang to include the InitializeAllTargets and
InitializeAllAsmPrinters LLVM headers. Also includes some minor fixes
for the CMake-based build with Xcode.

llvm-svn: 73544
2009-06-16 20:13:51 +00:00
Douglas Gregor 1b731d5dbe Introduce new headers whose inclusion forces linking and
initialization of all targets (InitializeAllTargets.h) or assembler
printers (InitializeAllAsmPrinters.h). This is a step toward the
elimination of relinked object files, so that we can build normal
archives.

llvm-svn: 73543
2009-06-16 20:12:29 +00:00
Chris Lattner 392da9c56d simplify .td file
llvm-svn: 73542
2009-06-16 20:04:21 +00:00
Dan Gohman 0ed7756fbe Generalize a few more instcombines to be vector/scalar-independent.
llvm-svn: 73541
2009-06-16 19:55:29 +00:00
Dan Gohman 1ee696d8fc Instcombine's ShrinkDemandedConstant may strip bits out of constants,
obscuring what would otherwise be a low-bits mask.  Use ComputeMaskedBits
to compute what ShrinkDemandedConstant knew about to reconstruct a
low-bits mask value.

llvm-svn: 73540
2009-06-16 19:52:01 +00:00
Evan Cheng 0d9730f39f CALL64pcrel32 immediate field is 32-bit. Patch by Abhinav Duggal.
llvm-svn: 73536
2009-06-16 19:44:27 +00:00
Anton Korobeynikov a8fd40b50a Address review comments: add 3 ARM calling conventions.
Dispatch C calling conv. to one of these conventions based on
target triple and subtarget features.

llvm-svn: 73530
2009-06-16 18:50:49 +00:00
Anton Korobeynikov 5d28cb204f GNU as refuses to assemble "pop {}" instruction. Do not emit such
(this is the case when we have thumb vararg function with single
callee-saved register, which is handled separately).

llvm-svn: 73529
2009-06-16 18:49:08 +00:00
Fariborz Jahanian 4be3f263c7 Add -Wundeclared-selector to -Wmost options group.
llvm-svn: 73524
2009-06-16 18:20:59 +00:00
Owen Anderson a149e22c09 Add a configure check for pthread_rwlock_init.
llvm-svn: 73523
2009-06-16 18:20:20 +00:00
Owen Anderson 4741b5782a Update the threading section to reflect current plans/implementation.
llvm-svn: 73521
2009-06-16 18:04:19 +00:00
Devang Patel 9fc4341eec It is possible that main input file does not have any symbol with debug info. To handle this edge case, always create main compile unit first.
This fixes PR 4228.

llvm-svn: 73520
2009-06-16 18:02:02 +00:00
Fariborz Jahanian bada785729 Test case was left behind from my last patch.
llvm-svn: 73519
2009-06-16 17:57:28 +00:00
Ted Kremenek 50d131dea1 Update checker build.
llvm-svn: 73518
2009-06-16 17:45:57 +00:00
Douglas Gregor c791c37633 Add Threading.cpp to the CMake project files
llvm-svn: 73516
2009-06-16 17:45:38 +00:00
Owen Anderson eb105f99ec Fix validation errors.
llvm-svn: 73515
2009-06-16 17:40:28 +00:00
Chris Lattner 943658f00b testcase for r72869, it turns out that it happens in Ruby.
llvm-svn: 73514
2009-06-16 17:39:02 +00:00
Owen Anderson 4cb4b6191a Split the thread-related APIs out into their own file, and add a few more
calls for convenience.

llvm-svn: 73512
2009-06-16 17:33:51 +00:00
Chris Lattner 651a221cc2 follow-on to my patch: some targets (like sparc) do not
have target-specific builtins, and do not set the count.
Just default to 0 for these targets.

llvm-svn: 73510
2009-06-16 17:27:50 +00:00
Chris Lattner 22c645b337 Testcase for r73506
llvm-svn: 73508
2009-06-16 17:23:25 +00:00
Chris Lattner 945d08d76f Generalize instcombine's isSafeToLoadUnconditionally() function
to ignore readonly calls, and factor it out of instcombine so
that it can be used by other passes.  Patch by Frits van Bommel!

llvm-svn: 73506
2009-06-16 17:23:12 +00:00
Fariborz Jahanian 0571d9bbba Implements -Wundeclared-selector for ObjC.
llvm-svn: 73495
2009-06-16 16:25:00 +00:00
Chris Lattner 2811a257f1 remove extraneous diff.
llvm-svn: 73494
2009-06-16 16:22:49 +00:00
Chris Lattner 4ef49c1d6e my refactoring of builtins changed target-specific builtins to only be
registered when PCH wasn't being used.  We should always install (in BuiltinInfo)
information about target-specific builtins, but we shouldn't register any builtin
identifier infos.  This fixes the build of apps that use PCH and target specific
builtins together.

llvm-svn: 73492
2009-06-16 16:18:48 +00:00
Sanjiv Gupta 05a7dba3bd Added missing libcalls for floating point to int conversions.
llvm-svn: 73491
2009-06-16 16:17:35 +00:00
Eli Friedman 8bc032c97c Remove the "llvm.umul.with.overflow is broken" warning; it should be
essentially working now, at least for common cases, and it shouldn't 
silently generate bad code.

llvm-svn: 73484
2009-06-16 10:24:13 +00:00
Sanjiv Gupta bce3ca6ad9 Fixed names of libcalls checked in r73480.
llvm-svn: 73483
2009-06-16 10:22:58 +00:00
Zhongxing Xu 838a0db0ba Use canonical type for building ElementRegion. Otherwise ElementRegions cannot
be unique.

llvm-svn: 73482
2009-06-16 09:55:50 +00:00
Sanjiv Gupta 5372d4a568 Code Restructuring. No functionality change.
llvm-svn: 73481
2009-06-16 09:45:18 +00:00
Sanjiv Gupta 557ed09e0f Added required libcalls for PIC16 (mostly floating points to integer casting operations).
llvm-svn: 73480
2009-06-16 09:03:58 +00:00
Evan Cheng 591bcad8b9 Rename RemoveCopiesFromValNo to TurnCopiesFromValNoToImpDefs.
llvm-svn: 73479
2009-06-16 07:15:05 +00:00
Evan Cheng cc21a5415a If a val# is defined by an implicit_def and it is being removed, all of the copies off the val# were removed. This causes problem later since the scavenger will see uses of registers without defs. The proper solution is to change the copies into implicit_def's instead.
TurnCopyIntoImpDef turns a copy into implicit_def and remove the val# defined by it. This causes an scavenger assertion later if the def reaches other blocks. Disable the transformation if the value live interval extends beyond its def block.

llvm-svn: 73478
2009-06-16 07:12:58 +00:00
Eli Friedman abfad5d61e Add some generic expansion logic for SMULO and UMULO. Fixes UMULO
support for x86, and UMULO/SMULO for many architectures, including PPC 
(PR4201), ARM, and Cell. The resulting expansion isn't perfect, but it's
not bad.

llvm-svn: 73477
2009-06-16 06:58:29 +00:00
Eli Friedman 48021d15d6 Misc accumulated tweaks to legalization logic for various targets.
llvm-svn: 73476
2009-06-16 06:40:59 +00:00