Commit Graph

85033 Commits

Author SHA1 Message Date
Eli Friedman 50fac2f7b5 Add missing include; fix missed constant to use llvm::MachO.
llvm-svn: 105810
2010-06-11 04:26:08 +00:00
Charles Davis b6a5a0d9e1 When mangling for the Microsoft C++ ABI, mangle variables in the global
namespace, too.

llvm-svn: 105809
2010-06-11 04:25:47 +00:00
Eli Friedman 102b925db8 Fix warning.
llvm-svn: 105808
2010-06-11 04:24:36 +00:00
Tom Care 00554634db Small fixes regarding printf fix suggestions.
- Added some handling of flags that become invalid when changing the conversion specifier.
- Changed fixit behavior to remove unnecessary length modifiers.
- Separated some tests out and added some comments.

modified:
  lib/Analysis/PrintfFormatString.cpp
  test/Sema/format-strings-fixit.c

llvm-svn: 105807
2010-06-11 04:22:02 +00:00
Greg Clayton 41f923275e Made lldb_private::ArchSpec more generic so that it can take a mach-o cpu
type and sub-type, or an ELF e_machine value. Also added a generic CPU type
to the arch spec class so we can have a single arch definition that the LLDB
core code can use. Previously a lot of places in the code were using the
mach-o definitions from a macosx header file. 

Switches over to using "llvm/Support/MachO.h" for the llvm::MachO::XXX for the
CPU types and sub types for mach-o ArchSpecs. Added "llvm/Support/ELF.h" so 
we can use the "llvm::ELF::XXX" defines for the ELF ArchSpecs.

Got rid of all CPU_TYPE_ and CPU_SUBTYPE_ defines that were previously being
used in LLDB.

llvm-svn: 105806
2010-06-11 03:25:34 +00:00
Charles Davis 9af2d4a614 Start implementing the Microsoft-style name mangler. Mangle simple names
(but not their types; that's later).

NOTE: Right now, variables in the global namespace don't get mangled, even
though they're supposed to be. This is because the default mangler
implements the shouldMangleDeclName() method that tells clang not to mangle
them. This will be fixed in a later patch.

llvm-svn: 105805
2010-06-11 03:07:32 +00:00
Charles Davis 95a546ee4d Add an option to specify the target C++ ABI to the frontend. Use it to
select either the default Itanium ABI or the new, experimental Microsoft ABI.

llvm-svn: 105804
2010-06-11 01:06:47 +00:00
Chandler Carruth 437416c06b Improve readability with TRY_TO, remove a redundant comment, and fix one aspect
of the recursion on VarDecls. Patch by Craig Silverstein.

llvm-svn: 105803
2010-06-11 01:00:06 +00:00
Greg Clayton ae5680be64 Fixed an issue where a return value wasn't being returned from Symtab::CompareSymbolValueByIndexLinux.
llvm-svn: 105802
2010-06-11 00:51:46 +00:00
John McCall c392f37ae8 Split DependentNameType into two types. DependentNameType represents the
case of an elaborated-type-specifier like 'typename A<T>::foo', and
DependentTemplateSpecializationType represents the case of an
elaborated-type-specifier like 'typename A<T>::template B<T>'.  The TypeLoc
representation of a DependentTST conveniently exactly matches that of an
ElaboratedType wrapping a TST.

Kill off the explicit rebuild methods for RebuildInCurrentInstantiation;
the standard implementations work fine because the nested name specifier
is computable in the newly-entered context.

llvm-svn: 105801
2010-06-11 00:33:02 +00:00
John McCall d85248be7a Provide a method to clear the current state of a TypeLocBuilder.
llvm-svn: 105800
2010-06-11 00:26:38 +00:00
Eli Friedman 5b405edd5e Remove dependency on Mac-specific libkern/OSByteOrder.h.
llvm-svn: 105799
2010-06-10 23:56:16 +00:00
Eli Friedman 6eb685c264 Make Error.h and Error.cpp compile on Linux.
llvm-svn: 105798
2010-06-10 23:45:58 +00:00
Eli Friedman a92e332b09 Make qsort_r usage "portable". Why does a function which seems so simple
have to be so complicated?

llvm-svn: 105797
2010-06-10 23:36:31 +00:00
Chandler Carruth c27ee0fd29 Avoid repeating the list of operators twice in RecursiveASTVisitor through
a set of preprocessor macros. Patch by Zhanyong Wan.

llvm-svn: 105796
2010-06-10 23:29:40 +00:00
Chandler Carruth 6c816770db Tweak a comment on the visitor to clarify one order of visit issue. Patch from
Zhanyong Wan.

llvm-svn: 105795
2010-06-10 23:27:51 +00:00
Eli Friedman 892c22c244 Remove global init constructor from r105746.
llvm-svn: 105794
2010-06-10 23:00:15 +00:00
Nate Begeman e0935ffa50 Multiplies, some shifts, set_lane
llvm-svn: 105793
2010-06-10 18:11:55 +00:00
Nate Begeman 0e915300e3 Add support for polynomial type, for polynomial multiply
llvm-svn: 105792
2010-06-10 18:06:07 +00:00
Daniel Dunbar 40e640c8df www: Add note on running clang tests from a CMake build, patch by Peter Collingbourne
llvm-svn: 105791
2010-06-10 17:01:45 +00:00
Duncan Sands a349d522f7 Avoid "variable 'bits' set but not used [-Wunused-but-set-variable]"
warnings with gcc-4.6, by not setting bits when the result is not
used.

llvm-svn: 105790
2010-06-10 16:23:15 +00:00
Daniel Dunbar 1d3c2fa9be Driver: Also mark -F as RenderJoined, the linker doesn't like "-F FOO" either.
llvm-svn: 105789
2010-06-10 15:53:17 +00:00
Duncan Sands 9943850884 Avoid many "variable 'Sub' set but not used [-Wunused-but-set-variable]" warnings
with gcc-4.6.  The warning is wrong, since Sub *is* used (perhaps gcc is confused
because the use of Sub is constant folded away?), but since it is trivial to avoid,
and massively reduces the amount of warning spew, just workaround the wrong warning.

llvm-svn: 105788
2010-06-10 15:06:05 +00:00
Chandler Carruth c65667c8ba Another chunk of the new RecursiveASTVisitor implementation: switch the return
value semantics such that we recurse while the visitors return true, and halt
as soon as one returns false. Patch by csilvers.

llvm-svn: 105787
2010-06-10 10:31:57 +00:00
Duncan Sands b3b9053708 Add includes to get ptrdiff_t. This is needed by gcc-4.6 which has
done some more header trimming, resulting in cstdef being included
by less header files.

llvm-svn: 105786
2010-06-10 10:13:58 +00:00
Jason Molenda 572f232f18 Spelling fix from Sebastian Redl.
llvm-svn: 105785
2010-06-10 08:23:00 +00:00
Benjamin Kramer fc6980b295 Add some missing close tags.
llvm-svn: 105784
2010-06-10 08:12:17 +00:00
Eric Christopher 84f89a8648 Fix paragraph tag. Patch by Mike Miller.
llvm-svn: 105783
2010-06-10 05:35:26 +00:00
Eli Friedman 04e6ba7fcc Expand AR_EFMT1 because the define is not present on Linux (and possibly
other systems).

llvm-svn: 105782
2010-06-10 04:56:00 +00:00
Eli Friedman 048ceecb15 Add missing include.
llvm-svn: 105781
2010-06-10 04:51:35 +00:00
Eli Friedman 8c3ad54bc2 Remove unused uuid_t constructor for lldb_private::UUID.
llvm-svn: 105780
2010-06-10 03:08:05 +00:00
Greg Clayton 86f0baa8f0 Fixed an error in the architecture page.
llvm-svn: 105779
2010-06-10 02:50:28 +00:00
Greg Clayton 491fbdf139 Updated the web pages with new navigable web pages.
llvm-svn: 105778
2010-06-10 02:48:57 +00:00
Greg Clayton c3df232164 Removing www files, will replace them with new ones after this commit.
llvm-svn: 105777
2010-06-10 02:48:13 +00:00
Bruno Cardoso Lopes 5f2adccc1b Teach tablegen to allow "let" expressions inside multiclasses,
providing more ways to factor out commonality from the records.

llvm-svn: 105776
2010-06-10 02:42:59 +00:00
Evan Cheng 38f6560461 Code refactoring, no functionality changes.
llvm-svn: 105775
2010-06-10 02:09:31 +00:00
Evan Cheng 2901371c32 Delete code that's not safe.
llvm-svn: 105774
2010-06-10 02:08:20 +00:00
Eli Friedman 2c472ee18d Don't use std::tr1::shared_ptr directly.
llvm-svn: 105773
2010-06-10 01:36:54 +00:00
Jason Molenda 9ec89fde2f Correctly handle the case where dyld has slid.
llvm-svn: 105772
2010-06-10 01:21:21 +00:00
Rafael Espindola ad8fed53ff Create a LinuxTargetInfo on ARM. This make clang correctly expand
__USER_LABEL_PREFIX__.

llvm-svn: 105771
2010-06-10 00:46:51 +00:00
Nate Begeman 4a04b467d9 support _lane ops, and multiplies by scalar.
llvm-svn: 105770
2010-06-10 00:17:56 +00:00
Nate Begeman 46e9dc4e6b NEON support for _lane ops, and multiplies by scalar.
llvm-svn: 105769
2010-06-10 00:16:56 +00:00
Charles Davis 74ce85980b Add a stub Microsoft Visual C++ ABI class (with stub mangler).
llvm-svn: 105767
2010-06-09 23:25:41 +00:00
Daniel Dunbar ed8f06e860 tests: Update test for previous change.
llvm-svn: 105766
2010-06-09 23:24:59 +00:00
Daniel Dunbar ca1282b971 Driver: -L should be marked as RenderJoined, the linker doesn't like "-L FOO".
llvm-svn: 105765
2010-06-09 23:20:37 +00:00
Daniel Dunbar 89cad2309b Driver: Eliminate flags on aliases, they are unnecessary (and unused).
llvm-svn: 105764
2010-06-09 23:20:34 +00:00
Daniel Dunbar bfe71f2416 Driver: Change Option parsing to always create arguments referring to unaliased
options.
 - This matches the intent of the .td files, and will simplify alias handling.
 - PR7321.

llvm-svn: 105763
2010-06-09 22:44:34 +00:00
Daniel Dunbar 35cbfeba8f Driver: Eliminate Arg subclasses, which are now unnecessary.
llvm-svn: 105762
2010-06-09 22:31:08 +00:00
Daniel Dunbar 8b77f73314 Driver: Keep the rendering style in the option, instead of as part of the Arg.
llvm-svn: 105761
2010-06-09 22:31:04 +00:00
Daniel Dunbar 8f1ebabaf7 Driver: Change Arg to just hold the values directly, instead of implicitly
deriving them from the Arg type.

llvm-svn: 105760
2010-06-09 22:31:00 +00:00