Peter Collingbourne
77b0e7f296
Implement -MG. Fixes PR9613
...
llvm-svn: 134996
2011-07-12 19:35:15 +00:00
NAKAMURA Takumi
c7ec4539ed
Tweak two tests with MSYS-bash tolerant.
...
llvm-svn: 134899
2011-07-11 16:21:34 +00:00
John McCall
75bc773be5
Somehow the -fgnu-runtime option itself got lost in all that shuffling.
...
Restore it.
llvm-svn: 134459
2011-07-06 02:36:30 +00:00
John McCall
24fc0decfe
Change the driver's logic about Objective-C runtimes: abstract out a
...
structure to hold inferred information, then propagate each invididual
bit down to -cc1. Separate the bits of "supports weak" and "has a native
ARC runtime"; make the latter a CodeGenOption.
The tool chain is still driving this decision, because it's the place that
has the required deployment target information on Darwin, but at least it's
better-factored now.
llvm-svn: 134453
2011-07-06 00:26:06 +00:00
Eli Friedman
ad811f01d5
Make clang behave in a gcc-compatible way in the presence of multiple flags for the same x86 target feature (e.g. -mno-sse -msse). gcc uses a somewhat unintuitive algorithm here in that the enabled SSE instructions is based on the order of the *last* flag for *each* feature-level, so that "-mno-sse -msse2" only enables SSE2, but "-mno-sse -msse2 -msse" enables all SSE levels.
...
Issue reported on cfe-dev.
llvm-svn: 134296
2011-07-02 00:34:19 +00:00
Daniel Dunbar
044a3908ef
Driver/Darwin: -force_load can be specified multiple times.
...
llvm-svn: 134025
2011-06-28 20:16:02 +00:00
Douglas Gregor
d79f9666c8
Fix test case; we may end up linking against the libprofile_rt dylib.
...
llvm-svn: 134006
2011-06-28 15:40:31 +00:00
Nick Lewycky
1abf57d5a9
Fix this test on machines that don't run clang -cc1as when asked to assemble.
...
llvm-svn: 133688
2011-06-23 05:38:06 +00:00
John McCall
b5f652e3ef
It is possible to request the nonfragile ABI with -fobjc-abi-version=2;
...
respect that when deciding whether -objc-exceptions implies the
-fexceptions -cc1 option.
llvm-svn: 133590
2011-06-22 00:53:57 +00:00
Daniel Dunbar
3d125d329c
Driver/Darwin: Fixup version check for -object_path_lto support.
...
llvm-svn: 133548
2011-06-21 21:18:32 +00:00
Daniel Dunbar
ef889c7c9b
Driver/Darwin: When invoking the linker, automatically pass -object_path_lto so
...
that the linker has a place to put the temporary object file and can leave it
around (for the driver to clean up). This is important so that the object file
references in the debug info are preserved for possible use by dsymutil.
- <rdar://problem/8294279> executable has no debug symbols when compiled with LTO
llvm-svn: 133543
2011-06-21 20:55:11 +00:00
Nick Lewycky
9e8bf1ba06
Also fix the warning about using "clang" instead of %clang.
...
llvm-svn: 133492
2011-06-21 00:23:47 +00:00
Nick Lewycky
65df58582c
Remove the leading hyphen so that grep doesn't parse it as one long option :)
...
llvm-svn: 133491
2011-06-21 00:21:22 +00:00
Daniel Dunbar
471c4f8299
Driver/Darwin: Honor -Xarch_FOO when the arch matches either the toolchain or
...
the architecture being bound.
- Fixes things like -Xarch_armv7.
llvm-svn: 133490
2011-06-21 00:20:17 +00:00
Nick Lewycky
ca6b90d8af
Add support for -Wa,--noexecstack when building from a non-assembly file. For
...
an assembly file it worked correctly, while for a .c file it would given an
error about how --noexecstack is not a supported argument to -Wa.
llvm-svn: 133489
2011-06-21 00:14:18 +00:00
Eli Friedman
623e2ba435
Add support for -force_load flag, for compat with Apple gcc. rdar://9555962 .
...
llvm-svn: 133218
2011-06-16 23:59:43 +00:00
John McCall
17b4c83c91
Make this test pretend to be on a darwin host.
...
llvm-svn: 133125
2011-06-16 01:18:08 +00:00
John McCall
31168b077c
Automatic Reference Counting.
...
Language-design credit goes to a lot of people, but I particularly want
to single out Blaine Garst and Patrick Beard for their contributions.
Compiler implementation credit goes to Argyrios, Doug, Fariborz, and myself,
in no particular order.
llvm-svn: 133103
2011-06-15 23:02:42 +00:00
Douglas Gregor
a860e6aebc
Introduce a -cc1-level option to turn off related result type
...
inference, to be used (only) by the Objective-C rewriter.
llvm-svn: 133025
2011-06-14 23:20:43 +00:00
Douglas Gregor
c9224d6714
Eliminate the -f[no]objc-infer-related-result-type flags; there's no
...
reason to allow the user to control these semantics through a flag.
llvm-svn: 132919
2011-06-13 16:42:53 +00:00
Douglas Gregor
33823727c8
Implement Objective-C Related Result Type semantics.
...
Related result types apply Cocoa conventions to the type of message
sends and property accesses to Objective-C methods that are known to
always return objects whose type is the same as the type of the
receiving class (or a subclass thereof), such as +alloc and
-init. This tightens up static type safety for Objective-C, so that we
now diagnose mistakes like this:
t.m:4:10: warning: incompatible pointer types initializing 'NSSet *'
with an
expression of type 'NSArray *' [-Wincompatible-pointer-types]
NSSet *array = [[NSArray alloc] init];
^ ~~~~~~~~~~~~~~~~~~~~~~
/System/Library/Frameworks/Foundation.framework/Headers/NSObject.h:72:1:
note:
instance method 'init' is assumed to return an instance of its
receiver
type ('NSArray *')
- (id)init;
^
It also means that we get decent type inference when writing code in
Objective-C++0x:
auto array = [[NSMutableArray alloc] initWithObjects:@"one", @"two",nil];
// ^ now infers NSMutableArray* rather than id
llvm-svn: 132868
2011-06-11 01:09:30 +00:00
Nick Lewycky
97864dac76
On linux, -nostdlib was causing a --start-group with no --end-group to be passed
...
to the linker.
llvm-svn: 132629
2011-06-04 06:27:06 +00:00
Eli Friedman
1ddf91621e
Fix the Windows buildbots, now that I can actually see what was going wrong with this test.
...
llvm-svn: 132521
2011-06-03 00:54:56 +00:00
Eli Friedman
8c5014dc5e
Switch a ridiculous grep over to FileCheck.
...
llvm-svn: 132496
2011-06-02 22:16:39 +00:00
Rafael Espindola
9d4a8cf481
Change how we link libprofile_rt.a. While at it, refactor the code a bit.
...
llvm-svn: 132474
2011-06-02 18:58:46 +00:00
Nick Lewycky
8a54c3d4ce
Fix Darwin test for r132006.
...
llvm-svn: 132013
2011-05-24 22:18:08 +00:00
Rafael Espindola
f934f98ad2
The logic about -static is darwin only. For now assume that all non
...
darwin assembler can handle cfi. Add a test.
llvm-svn: 131464
2011-05-17 16:26:17 +00:00
Daniel Dunbar
eb86b04595
Driver/Darwin: Put dsymutil -o arguments first, so that dysmutil doesn't barf
...
when POSIXLY_COMPLIANT is set.
- Patch by Dave Vasilevsky!
llvm-svn: 131084
2011-05-09 17:23:16 +00:00
Daniel Dunbar
ce1035c20f
Frontend: Fix a crash in CC_LOG_DIAGNOSTICS handling.
...
llvm-svn: 130909
2011-05-05 02:12:02 +00:00
Daniel Dunbar
7e0058626a
tests: Tweak test to at least use a standard arch, to ensure we try to invoke
...
Clang.
llvm-svn: 130861
2011-05-04 19:52:08 +00:00
Devang Patel
85ac42339c
Update metadata id number in string compare check.
...
llvm-svn: 130757
2011-05-03 16:19:38 +00:00
Daniel Dunbar
8438464b41
Driver/Darwin: Honor --sysroot= when invoking the linker, on Darwin.
...
llvm-svn: 130723
2011-05-02 21:03:47 +00:00
Daniel Dunbar
c44d313cff
Driver/Darwin/ld: Set the deployment target following the version information in
...
the tool chain, instead of based on the translated arguments.
llvm-svn: 130440
2011-04-28 21:23:41 +00:00
Chandler Carruth
30483fb188
Move all of the logic for __DEPRECATED to the driver based on comments
...
from dgregor.
llvm-svn: 130066
2011-04-23 19:48:40 +00:00
Chandler Carruth
61fbf62838
Fix Clang's __DEPRECATED define to be controled by -Wdeprecated. This
...
matches GCC behavior which libstdc++ uses to limit #warning-based
messages about deprecation.
The machinery involves threading this through a new '-fdeprecated-macro'
flag for CC1. The flag defaults to "on", similarly to -Wdeprecated. We
turn the flag off in the driver when the warning is turned off (modulo
matching some GCC bugs). We record this as a language option, and key
the preprocessor on the option when introducing the define.
A separate flag rather than a '-D' flag allows us to properly represent
the difference between C and C++ builds (only C++ receives the define),
and it allows the specific behavior of following -Wdeprecated without
potentially impacting the set of user-provided macro flags.
llvm-svn: 130055
2011-04-23 09:27:53 +00:00
Chandler Carruth
b009b14971
There were some frustrating problems with the implementation of
...
-Wwrite-strings. First and foremost, once the positive form of the flag
was passed, it could never be disabled by passing -Wno-write-strings.
Also, the diagnostic engine couldn't in turn use -Wwrite-strings to
control diagnostics (as GCC does) because it was essentially hijacked to
drive the language semantics.
Fix this by giving CC1 a clean '-fconst-strings' flag to enable
const-qualified strings in C and ObjC compilations. Corresponding
'-fno-const-strings' is also added. Then the driver is taught to
introduce '-fconst-strings' in the CC1 command when '-Wwrite-strings'
dominates.
This entire flag is basically GCC-bug-compatibility driven, so we also
match GCC's bug where '-w' doesn't actually disable -Wwrite-strings. I'm
open to changing this though as it seems insane.
llvm-svn: 130051
2011-04-23 06:30:43 +00:00
Daniel Dunbar
bbd482226e
Driver/Darwin: Allow OS X deployment targets like 10.4.11, even though they
...
can't be represented in the environment define.
llvm-svn: 129939
2011-04-21 21:27:33 +00:00
Daniel Dunbar
fcd2389b7a
TWEAK
...
llvm-svn: 129835
2011-04-19 23:34:21 +00:00
Daniel Dunbar
5c56828d91
Driver/Darwin: Switch to using new style triples.
...
llvm-svn: 129824
2011-04-19 21:45:47 +00:00
Chris Lattner
57540c5be0
fix a bunch of comment typos found by codespell. Patch by
...
Luis Felipe Strano Moraes!
llvm-svn: 129559
2011-04-15 05:22:18 +00:00
Chandler Carruth
a7773f719e
Add -no-canonical-prefixes to tests which assert on the name of the
...
built clang binary that is used by the test. Build systems that use
symlinks for build outputs will fail these assertions otherwise.
llvm-svn: 129482
2011-04-13 22:28:36 +00:00
Daniel Dunbar
2f8d10e8d7
Fronted/CC_LOG_DIAGNOSTICS: Add test case.
...
llvm-svn: 129097
2011-04-07 19:05:06 +00:00
Chandler Carruth
82701204a4
Add my test case for r128353. I think this is the last test case to fail
...
to be added... Sorry for the noise.
llvm-svn: 128395
2011-03-27 21:03:41 +00:00
Daniel Dunbar
67fea71c2d
Driver/Darwin: Dsymutil actions should put the dSYM adjacent to the output file.
...
llvm-svn: 128292
2011-03-25 18:16:51 +00:00
Daniel Dunbar
12100e2c7f
Frontend: Add a more explicit -backend-option flag for passing backend command
...
line options, instead of leveraging the blanket -mllvm option.
- This allows using the frontend itself without requiring the backend have
those options available (i.e., if the target wasn't built).
llvm-svn: 128087
2011-03-22 16:48:17 +00:00
Daniel Dunbar
151a372113
Driver/Darwin: Transparently fallback when compiling i386 -fapple-kext code, we
...
don't support the ABI yet.
llvm-svn: 127903
2011-03-18 20:14:03 +00:00
NAKAMURA Takumi
f5606922f8
test/Driver/sysroot-flags.c: Tweak for Mingw MSYS bash.
...
MSYS substitutes path (that begins with "/") to de-mounted Windows path, even if it were nonexistent.
"/foo/bar" might be substituted to "C:/msysgit/foo/bar".
llvm-svn: 127861
2011-03-18 03:21:33 +00:00
NAKAMURA Takumi
1bd6491f7f
test/Driver/darwin-cc.c: FileCheck-ize and tweak for Mingw MSYS bash.
...
MSYS substitutes path (that begins with "/") to de-mounted Windows path.
"/tmp" might be substituted as "C:/DOCUME~1/chapuni/LOCALS~1/Temp".
llvm-svn: 127860
2011-03-18 03:21:26 +00:00
Daniel Dunbar
c44f8cf7b8
Driver/Obj-C: Be compatible with GCC behavior in that -fno-exceptions *does not*
...
disable Obj-C exceptions.
llvm-svn: 127836
2011-03-17 23:28:31 +00:00
Daniel Dunbar
033a4bc49e
Driver/Darwin: These are command line options, not target features.
...
llvm-svn: 127820
2011-03-17 18:29:04 +00:00
Daniel Dunbar
c9388c11f1
Driver/Darwin/ARM: Kernel/kext code has more strict alignment requirements.
...
llvm-svn: 127815
2011-03-17 17:10:06 +00:00
Daniel Dunbar
b1db4b69cc
Driver/ARM: Match GCC behavior in that -msoft-float disables NEON, despite this
...
not being consistent at all with other parts of the GCC implementation.
llvm-svn: 127777
2011-03-17 00:07:34 +00:00
NAKAMURA Takumi
c9998aa1f4
test/Driver/hello.c: Tweak for cygming.
...
- Driver's name may be "clang(-\d.\d).exe".
- Emitted executable file is named as "%t.exe". It must be harmless on other OS.
llvm-svn: 127729
2011-03-16 13:51:46 +00:00
Chandler Carruth
306f98c241
Add a test case that would have caught the bug fixed in r126640.
...
I've only covered C++'s flags here, we should probably do something
similar for ObjC flags.
llvm-svn: 126641
2011-02-28 07:38:09 +00:00
Frits van Bommel
ba6ce03e46
Fix this test case for CMake builds after r126502, which sneakily changed the actual executable name to clang-<version>.
...
llvm-svn: 126560
2011-02-27 01:17:12 +00:00
Anders Carlsson
3320e1575f
Make clang -cc1 disable Objective-C exceptions by default, and add a -fobjc-exceptions flag to turn them on.
...
Update all tests accordingly.
llvm-svn: 126177
2011-02-22 01:52:06 +00:00
Daniel Dunbar
bd466d404a
tests: Fix test on Win32.
...
llvm-svn: 126087
2011-02-20 17:41:24 +00:00
Daniel Dunbar
1094bb101b
Driver/Darwin: Support -Wl, with -Xarch_. This doesn't work naturally because of
...
the special way we model "linker input" arguments.
llvm-svn: 126023
2011-02-19 05:33:51 +00:00
Roman Divacky
115f0fa397
Add hardcoded -L/usr/lib after all -L options to the FreeBSD linker
...
invocation.
This mimics what gcc does and fixes libtool check for libraries.
llvm-svn: 124558
2011-01-30 08:12:24 +00:00
Benjamin Kramer
ed3d85a7f0
Make the FreeBSD driver test more robust so it doesn't fail when there's a single lib32 path.
...
llvm-svn: 124494
2011-01-28 18:28:30 +00:00
Fariborz Jahanian
a4cfff87b9
Add all options needed to support -fapple-kext. wip.
...
llvm-svn: 122987
2011-01-07 01:05:02 +00:00
Daniel Dunbar
86aed7d5fc
Driver: M and MM should be grouped together, <rdar://problem/8744831>.
...
llvm-svn: 121284
2010-12-08 21:33:40 +00:00
Chandler Carruth
174305b94e
Make this test resilient to whether or not the Linux toolchain renders the
...
sysroot flag to the link command as a joined flag or a separate flag.
llvm-svn: 121270
2010-12-08 19:11:45 +00:00
Rafael Espindola
c8f008f649
Use ld directly on linux. Changes from the previous try:
...
*) Try to detect as much as possible from the system itself, not the distro.
This should make it easier to port to a new distro and more likely to
work on a unknown one.
*) The distro enum now doesn't include the arch. Just use the existing
host detection support in LLVM.
*) Correctly handle --sysroot.
A small regression is that now clang will pass bitcode file to the linker.
This is necessary for the gold plugin support to work.
It might be better to detect this at configure/cmake time, but doing it in
c++ first is a lot easier.
llvm-svn: 118382
2010-11-07 20:14:31 +00:00
Rafael Espindola
5275559c2e
Update tests to not search of as.
...
llvm-svn: 117711
2010-10-29 21:18:11 +00:00
Chandler Carruth
c7b34694ff
Try again to pacify the build bots. =/ I'm getting a Darwin machine to test on.
...
llvm-svn: 116918
2010-10-20 08:24:03 +00:00
Chandler Carruth
4baa6ef5ec
Remove a modern bash-ism and use simpler shell redirects. Hopefully will fix
...
build bots.
llvm-svn: 116914
2010-10-20 07:16:18 +00:00
Chandler Carruth
24e17e175d
Add support for the '--sysroot' flag, and an accompanying test of its
...
interactions with -isysroot and other driver commands.
llvm-svn: 116912
2010-10-20 07:00:47 +00:00
Argyrios Kyrtzidis
dfe47dba37
Revert r116605, a lot more were committed by mistake.
...
llvm-svn: 116606
2010-10-15 18:51:34 +00:00
Argyrios Kyrtzidis
ffbba26285
Add '-include-pch' option to the driver, so it can get passed to the cc1 driver.
...
llvm-svn: 116605
2010-10-15 18:49:01 +00:00
Argyrios Kyrtzidis
74825bcfb9
Implement -fshort-enums (rdar://8490496).
...
llvm-svn: 116020
2010-10-08 00:25:19 +00:00
Francois Pichet
8f170b8239
Fix last test still failing on Win32. 100% pass rate now!
...
llvm-svn: 113702
2010-09-11 20:43:12 +00:00
Daniel Dunbar
e31e323c02
Driver/Darwin: Switch to using simplified tool chain by default -- what better
...
way to see what will break! :)
llvm-svn: 111840
2010-08-23 20:58:55 +00:00
Daniel Dunbar
568b7500fe
Driver/OptParser: Add a NoForward flag to prevent forwarding certain options to
...
GCC.
- Mark -Xclang and -mlinker-version= with it for now, although I am sure there
are more.
llvm-svn: 111005
2010-08-13 04:44:20 +00:00
Argyrios Kyrtzidis
90bdfbbdf7
Switch on PCH for C++. C++ fans all over the world rejoice.
...
llvm-svn: 110879
2010-08-11 23:27:58 +00:00
Daniel Dunbar
cacb0e2d45
Driver/Darwin: Pass -demangle when linking, if the linker supports it.
...
llvm-svn: 110873
2010-08-11 23:07:50 +00:00
Daniel Dunbar
ce25f33e2a
Driver/FreeBSD: Infer the right arch name in the presence of -m32,-m64, for the
...
cases we care about.
- This is eventually going to be unified outside the host specific code.
llvm-svn: 110693
2010-08-10 17:39:05 +00:00
Daniel Dunbar
926f81fce5
Driver: Start ripping out support for -pipe, which is worthless and complicates
...
too many other things.
llvm-svn: 110007
2010-08-02 02:38:03 +00:00
Daniel Dunbar
6d48476446
Driver/Darwin: Set -force_cpusubtype_ALL only by default on x86.
...
llvm-svn: 109074
2010-07-22 01:47:22 +00:00
Daniel Dunbar
08d047666a
Fix test for Win32.
...
llvm-svn: 108806
2010-07-20 04:06:54 +00:00
Daniel Dunbar
99b5524324
Driver: Make -fnext-runtime the default when rewriting Objective-C.
...
llvm-svn: 108741
2010-07-19 19:44:22 +00:00
Daniel Dunbar
354e96df95
Driver/Darwin: Add deployment target after doing argument translation, so that
...
-mmacosx-version-min works inside a -Xarch_ flag.
llvm-svn: 108712
2010-07-19 17:11:36 +00:00
Rafael Espindola
77a067a653
Implement support for reading arguments specified in a file with @file . If
...
there is no file named "file", keep the @file option unchanged.
llvm-svn: 108697
2010-07-19 15:20:12 +00:00
Daniel Dunbar
00c57967da
Revert r108672, "Implement support for reading arguments specified in a file
...
with @file.", it doesn't correctly handle cases where arguments starting with
'@' are passed to other command line arguments.
llvm-svn: 108686
2010-07-19 07:21:12 +00:00
Rafael Espindola
129e43d29b
Implement support for reading arguments specified in a file with @file .
...
llvm-svn: 108672
2010-07-19 03:08:01 +00:00
Daniel Dunbar
b2447154e0
Driver/Darwin: Resolve deployment target defaulting to be more predictable;
...
assume we are targetting OS X unless an explicit option is given.
llvm-svn: 108426
2010-07-15 16:18:06 +00:00
Daniel Dunbar
af68a88e68
Driver/Darwin: Pass -pie/-no_pie to the linker when -fpie/-fno-pie and friends
...
are explicitly given.
llvm-svn: 108297
2010-07-13 23:31:40 +00:00
Daniel Dunbar
223749db6c
Driver: .dSYM suffix should be appended, not replace the existing suffix.
...
llvm-svn: 107369
2010-07-01 01:36:31 +00:00
Daniel Dunbar
8452ef0798
tests: Use %clangxx when using driver for C++, in case C++ support is disabled.
...
llvm-svn: 107153
2010-06-29 16:52:24 +00:00
Daniel Dunbar
00d3d8e902
Driver/Darwin: Only run dsymutil when we are also compiling/assembling as part
...
of the compilation.
- <rdar://problem/8141387> clang is always invoking dsymutil
llvm-svn: 107149
2010-06-29 16:38:33 +00:00
Rafael Espindola
0e1fb4f341
Set the default arch based on the triple.
...
llvm-svn: 107021
2010-06-28 17:18:09 +00:00
Benjamin Kramer
ad36eb2911
Fix typo.
...
llvm-svn: 105993
2010-06-15 08:21:35 +00:00
Daniel Dunbar
5a9d1835be
Driver: Fix PR4062 by dissecting one particular -Wp, form.
...
llvm-svn: 105966
2010-06-14 21:37:09 +00:00
Daniel Dunbar
fb3d747fc6
Driver: Dissect -Wl, and -Xlinker arguments to remove --no-demangle, which was a
...
collect2 option that is passed by some projects (notably WebKit).
llvm-svn: 105964
2010-06-14 21:23:12 +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
Daniel Dunbar
ed8f06e860
tests: Update test for previous change.
...
llvm-svn: 105766
2010-06-09 23:24:59 +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
c656d3e111
Revert "Driver: Change Option parsing to always create arguments referring to
...
unaliased", this isn't quite right yet.
llvm-svn: 105747
2010-06-09 19:27:07 +00:00
Daniel Dunbar
aea0620b89
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: 105744
2010-06-09 19:19:01 +00:00
Daniel Dunbar
24e52992c0
Driver: Support invoking Clang on .ll or .bc inputs.
...
- We actually pretend that we have two separate types for LLVM assembly/bitcode because we need to use the standard suffixes with LTO ('clang -O4 -c t.c' should generate 't.o').
It is now possible to do something like:
$ clang -emit-llvm -S t.c -o t.ll ... assorted other compile flags ...
$ clang -c t.ll -o t.o ... assorted other compile flags ...
and expect that the output will be almost* identical to:
$ clang -c t.c -o t.o ... assorted other compile flags ...
because all the target settings (default CPU, target features, etc.) will all be initialized properly by the driver/frontend.
*: This isn't perfect yet, because in practice we will end up running the optimization passes twice. It's possible to get something equivalent out with a well placed -mllvm -disable-llvm-optzns, but I'm still thinking about the cleanest way to solve this problem more generally.
llvm-svn: 105584
2010-06-07 23:28:45 +00:00
Daniel Dunbar
7f3d95054b
Driver: Change -dwarf-debug-flags option to pass the original command line
...
arguments after translation, instead of the -cc1 level arguments.
llvm-svn: 105476
2010-06-04 18:47:06 +00:00
Daniel Dunbar
6beaf5110f
Driver/Darwin: Model dsymutil properly, as a separate action/tool kind which is
...
added as the last output step, instead of just hacking it into the link step.
- Among other things, this fixes dSYM generation when using multiple -arch options.
llvm-svn: 105475
2010-06-04 18:28:41 +00:00
Chandler Carruth
e039148801
Daniel re-educated me about what Alias does and does not do. Turn that off for
...
'-fasm' and explicitly map from that flag to -fgnu-keywords in the driver. Turn
off the driver in the lexer test for this madness and add a test to the driver
that the translation actually works.
llvm-svn: 104428
2010-05-22 02:21:53 +00:00
Daniel Dunbar
8363697282
Force -no-integrated-as in this test.
...
llvm-svn: 103758
2010-05-14 02:02:13 +00:00
Daniel Dunbar
12c82080a2
Driver: Add support for -fobjc-abi-version=.
...
- <rdar://problem/7919678>
llvm-svn: 102559
2010-04-28 23:25:24 +00:00
Daniel Dunbar
df3d1c2d1f
Driver/Darwin: Fix Objective-C non-fragile ABI and dispatch method defaults, which were wrong in numerous places.
...
- <rdar://problem/7903449>
llvm-svn: 102257
2010-04-24 18:37:41 +00:00
Daniel Dunbar
2131f9ba8c
Simplify test, in the hopes of making linux happy.
...
llvm-svn: 100955
2010-04-11 01:10:44 +00:00
Daniel Dunbar
06ef31c8b1
Driver: Only add extra -L paths on darwin if they exist. Unfortunately, this
...
means it isn't really possible to write the test case for this code, but this is
the kind of thing that really requires testing against the installed compiler
anyway.
llvm-svn: 100935
2010-04-10 18:18:57 +00:00
Daniel Dunbar
6e444c07b7
Tweak test for portability.
...
llvm-svn: 100931
2010-04-10 17:45:01 +00:00
Daniel Dunbar
16334e143f
Driver: Ignore -fobjc-gc and -fobjc-gc-only for platforms which don't support them.
...
llvm-svn: 100930
2010-04-10 16:20:23 +00:00
Daniel Dunbar
4364558956
Driver/Darwin/x86: When linking, incorporate -L paths based on the path where
...
Clang is installed. This is designed to match gcc, and is important when
installed in a non-standard location.
- This is gross, but no worse than ever. It will die when we finally move to
the compiler-rt based toolchain, any day now.
llvm-svn: 100915
2010-04-10 01:24:22 +00:00
Douglas Gregor
cc9c92cfc2
XFAIL the -nostdinc++ test on Windows; it doesn't look like we even have the notion of separate C and C++ paths there
...
llvm-svn: 99422
2010-03-24 20:45:20 +00:00
Douglas Gregor
64b046fce4
Implement support for -nostdc++. Fixes PR6446.
...
llvm-svn: 99417
2010-03-24 20:13:48 +00:00
Daniel Dunbar
6a8efa8a79
Driver: Support CC_PRINT_OPTIONS, used for logging the compile commands (in -v style) to a file.
...
llvm-svn: 99054
2010-03-20 08:01:59 +00:00
Daniel Dunbar
ed45c3f2b9
Driver: Force joining of "-l" "foo", the linker doesn't eat that format.
...
<rdar://problem/7641151> clang must eat spaces after -l
llvm-svn: 99023
2010-03-20 01:12:03 +00:00
Rafael Espindola
08a692aba4
Don't produce debug info when given -g. Fixes PR6529.
...
llvm-svn: 97897
2010-03-07 04:46:18 +00:00
John McCall
731be6620c
Revert changes r97693, r97700, and r97718.
...
Our testing framework can't deal with disabled targets yet.
llvm-svn: 97719
2010-03-04 04:29:44 +00:00
John McCall
61076e1d87
XFAIL these tests on win32, since the win32 buildbot apparently disables all
...
targets except X86.
llvm-svn: 97718
2010-03-04 04:14:44 +00:00
Daniel Dunbar
0ac9445098
PR5803: clang++: Treat untyped 'C' inputs as C++.
...
- Patch by Andrzej K. Haczewski, with a tweak by me to emit a 'deprecated'
diagnostic when we do this. We'll see what zee users say.
llvm-svn: 96511
2010-02-17 20:32:58 +00:00
Daniel Dunbar
aeea8ac3d8
Driver: Add -rewrite-objc, which is an interface to clang -cc1 -rewrite-objc.
...
llvm-svn: 95849
2010-02-11 03:16:21 +00:00
Daniel Dunbar
98188414ef
Driver/Darwin: Darwin uses -fobjc-legacy-dispatch on ARM.
...
llvm-svn: 95006
2010-02-01 21:07:43 +00:00
Daniel Dunbar
a9fdb83ec4
Set -ccc-host-triple in these tests.
...
llvm-svn: 94661
2010-01-27 04:03:51 +00:00
Daniel Dunbar
f48d51d693
Driver/Darwin: Eliminate invalid uses of DarwinVersion -- this fixes a number of
...
defaults when targetting iPhoneOS (blocks, non-fragile ABI, stack protector).
llvm-svn: 94642
2010-01-27 00:57:11 +00:00
Daniel Dunbar
8360803a8a
Driver/Darwin: Fix a few link arguments when targetting different iPhoneOS
...
versions to match gcc (which is matching linker changes).
llvm-svn: 94640
2010-01-27 00:56:56 +00:00
Daniel Dunbar
d54669d30b
Driver/Darwin: Honor IPHONEOS_DEPLOYMENT_TARGET.
...
llvm-svn: 94488
2010-01-26 01:45:19 +00:00
Daniel Dunbar
6bc5be24fa
Remove ../libexec from clang program search path, clang-cc is dead.
...
llvm-svn: 93749
2010-01-18 19:16:53 +00:00
Dan Gohman
d1e76b957b
Use -fno-math-errno by default, and remove the IsMathErrnoDefault
...
targethook, which is no longer being used. This fixes PR5971.
llvm-svn: 92987
2010-01-08 02:20:44 +00:00
Chris Lattner
426b709a81
fix whitespace in test to match llvm asmprinter change.
...
llvm-svn: 92251
2009-12-29 07:42:23 +00:00
Daniel Dunbar
e0d2691b88
Driver: Fix '... -O4 -O0 ...', which was generating bitcode.
...
llvm-svn: 91962
2009-12-23 00:47:42 +00:00
Daniel Dunbar
a7d0231b66
clang -cc1: Rename -mcpu to -target-cpu to match other target options and not alias driver/backend option.
...
llvm-svn: 91671
2009-12-18 06:30:12 +00:00
Daniel Dunbar
24c7f5efc5
Add -dwarf-debug-flags, which provides a way to embed the cc1 level options used
...
to compile a translation unit into the debug info for that file.
- Used by parts of Darwin build process to check compiler flags, etc.
- <rdar://problem/7256886> clang does not emit AT_APPLE_flags
llvm-svn: 91661
2009-12-18 02:43:17 +00:00
Daniel Dunbar
5618e98f33
Update tests to use %clang instead of 'clang', and forcibly disable use of '
...
clang ' or ' clang -cc1 ' or ' clang-cc ' in test lines (by substituting them to
garbage).
llvm-svn: 91460
2009-12-15 22:01:24 +00:00
Daniel Dunbar
18a72959f5
Tests: Fix some bugs in clang_f_opts, options were out of order but it worked
...
because it had two inputs, except on Win32 where /dev/null doesn't exist.
llvm-svn: 91235
2009-12-13 02:00:23 +00:00
Ted Kremenek
e1996c27eb
Convert the remainder of this test case over to using FileCheck.
...
llvm-svn: 91194
2009-12-12 00:42:52 +00:00
Ted Kremenek
eadc7c3537
Make using '-fshort-enums' an error until it is actually implemented (changes the ABI, so it is dangerous to not error out if we don't support it). Fixes <rdar://problem/7461006>.
...
llvm-svn: 91191
2009-12-12 00:38:18 +00:00
Daniel Dunbar
6c536aa0fb
Driver: Switch to using "clang" "-cc1" instead of "clang-cc".
...
llvm-svn: 91174
2009-12-11 23:00:49 +00:00
Daniel Dunbar
8775727b39
Improve test portability.
...
llvm-svn: 90890
2009-12-08 22:22:20 +00:00
Daniel Dunbar
6cc525b44e
Unbreak clang-cc handling of -msoft-float / -mfloat-abi=, which I borked.
...
llvm-svn: 90873
2009-12-08 19:49:51 +00:00
Daniel Dunbar
acd6957b59
Driver: Switch -ccc-* options to using the standard options functionality.
...
- I still want to get rid of them, but manually handling them isn't adding value.
llvm-svn: 90602
2009-12-04 21:55:23 +00:00
Daniel Dunbar
e357d5689e
Fix Clang tool translation to forward -fvisibility as separate arguments, the
...
old syntax isn't supported.
llvm-svn: 90469
2009-12-03 18:42:11 +00:00
Daniel Dunbar
a1b02a2380
Move LLVM backend options to explicit clang-cc / clang -cc1 options, which we then manually pass to the command line library; eventually the latter grossness should be fixed by a real API when creating the target machine.
...
llvm-svn: 90063
2009-11-29 07:18:39 +00:00
Daniel Dunbar
8bed86c43e
Standardize Driver translation to call clang-cc using '-foo' form instead of '--foo'.
...
llvm-svn: 89497
2009-11-20 22:21:36 +00:00
Daniel Dunbar
484afa2d3b
Switch -f{builtin,math-errno,rtti} and -analyzer-purge-dead to -...no... variants instead of using llvm: 🆑 :init(true) arguments.
...
llvm-svn: 89315
2009-11-19 04:55:23 +00:00
Daniel Dunbar
4930e3357b
Add -fblocks, -stack-protector, and -fobjc-nonfragile-abi defaulting to driver,
...
instead of using getDefaultLangOptions.
- Remove unused -fobjc-tight-layout while at it.
llvm-svn: 89065
2009-11-17 08:07:36 +00:00
Daniel Dunbar
e13ada6a3b
Add clang -mcpu=native support, patch by Roman Divacky, varioustweaks by me.
...
- We still need support for detecting the target features, since the name
doesn't actually do a good job of decribing what the CPU supports (for LLVM).
llvm-svn: 88819
2009-11-14 22:04:54 +00:00
Daniel Dunbar
34546ce43d
Remove RUN: true lines.
...
llvm-svn: 86432
2009-11-08 01:47:25 +00:00
Daniel Dunbar
8b57697954
Eliminate &&s in tests.
...
- 'for i in $(find . -type f); do sed -e 's#\(RUN:.*[^ ]\) *&& *$#\1#g' $i | FileUpdate $i; done', for the curious.
llvm-svn: 86430
2009-11-08 01:45:36 +00:00
John Thompson
ed4e2950bc
Adding -fshort-wchar option.
...
llvm-svn: 86167
2009-11-05 20:14:16 +00:00
Daniel Dunbar
83e3714902
XFAIL Driver/hello.c on Windows.
...
llvm-svn: 85885
2009-11-03 07:49:31 +00:00
Daniel Dunbar
624c21b029
Change the driver to do the Darwin triple mangling itself instead of forwarding
...
-mmacosx-version-min and -miphoneos-version-min to clang-cc.
llvm-svn: 85600
2009-10-30 18:12:20 +00:00
Sebastian Redl
c6a9254f01
Convert some driver checks to FileCheck.
...
llvm-svn: 85133
2009-10-26 18:07:30 +00:00
Daniel Dunbar
cb8eb225b1
Update test; the driver can find a different gcc tool chain directory when
...
simulating running on a different system.
llvm-svn: 84862
2009-10-22 16:05:11 +00:00
Daniel Dunbar
cbc34b769e
Driver: Default to using PTH for C++ precompiled header support, PCH for C++
...
isn't implemented yet.
- <rdar://problem/7297571> Clang should use pretokenized headers for C++ PCH
files
llvm-svn: 84197
2009-10-15 20:02:44 +00:00
John Thompson
271f1f07bc
Converted to use FileCheck.
...
llvm-svn: 84005
2009-10-13 18:51:26 +00:00
Mike Stump
e07e33a196
Tolerate .exe on executables. Patch by John Thompson. Changed * to .* by me.
...
llvm-svn: 83586
2009-10-08 22:30:02 +00:00
Mike Stump
8409f9102b
Tolerate .exe on executables. Patch by John Thompson.
...
llvm-svn: 83584
2009-10-08 22:25:29 +00:00
Daniel Dunbar
d71a03b164
Fix truck sized thinko where Darwin/ARM toolchain didn't look for programs in
...
libexec, *blush*.
llvm-svn: 83086
2009-09-29 18:52:10 +00:00
Daniel Dunbar
1d9b45304d
Work around FileCheck -NOT restriction.
...
llvm-svn: 82417
2009-09-20 23:35:52 +00:00
Daniel Dunbar
0c33f44cd9
Force triple.
...
llvm-svn: 81781
2009-09-14 20:21:18 +00:00
Daniel Dunbar
4fa0811e4c
Don't pass -fno-builtin-str{cat,cpy} to clang-cc, I forget we don't support that yet. PR4941.
...
llvm-svn: 81430
2009-09-10 04:57:27 +00:00
Daniel Dunbar
2ffe029a61
Implement Darwin/ARM behavior for defaulting to -fno-builtin-str{cat,cpy}.
...
llvm-svn: 81425
2009-09-10 03:37:02 +00:00
Daniel Dunbar
953b8d1f15
Fix ShouldUseClangCompiler to use llvm::Triple.
...
- -1 FIXME, and fixes 'clang -arch armv4t ...', for example.
llvm-svn: 81276
2009-09-08 23:36:55 +00:00
Daniel Dunbar
c09988dda5
Remove FIXMEs for pedantically-gcc-bug-compatible behavior.
...
- We aren't going to fix these since they haven't caused problems in practice.
- Similarly, don't forward -object to Darwin ld.
llvm-svn: 81224
2009-09-08 16:39:16 +00:00
Daniel Dunbar
6cdf83c192
Add driver support for -emit-ast and AST compilation steps.
...
- <rdar://problem/7185031> Add 'clang' option '-emit-ast'
llvm-svn: 80678
2009-09-01 16:57:46 +00:00
Daniel Dunbar
f5147c6c02
Add missing '&&'...
...
llvm-svn: 79950
2009-08-24 22:29:04 +00:00
Daniel Dunbar
a6b4a3d646
PR4766: Don't pass -static to 'as' on x86_64 on Darwin.
...
Also, do pass -static even with -dynamic on i386.
llvm-svn: 79948
2009-08-24 22:26:16 +00:00
Daniel Dunbar
516bb9dd76
Remove arch normalization from Driver, this should be unnecessary now that
...
things have moved to llvm::Triple.
llvm-svn: 79902
2009-08-24 09:16:49 +00:00
Daniel Dunbar
a8888ac1cb
Driver/OpenBSD: Improve ld options.
...
- Patch by Jonathan Gray!
llvm-svn: 77935
2009-08-03 01:28:59 +00:00
Daniel Dunbar
e65f4de30d
'unset' isn't needed in these tests anymore, we always run with a controlled
...
environment.
llvm-svn: 77776
2009-08-01 04:51:30 +00:00
Daniel Dunbar
97ea867690
MultiTestRunner: Validate '&&' at the end of RUN lines.
...
- This is just to normalize, these will go away soon hopefully.
Added all the missing '&&'s that have crept in. :)
llvm-svn: 77062
2009-07-25 11:27:37 +00:00
Daniel Dunbar
6bdd19a7e2
Change these tests to not depend as much on the name of the input.
...
llvm-svn: 77057
2009-07-25 09:01:12 +00:00
Daniel Dunbar
07b749230c
Switch the driver back to always using clang-cc by default (for C++, and
...
regardless of the architecture).
- This is a good default for development & testing; for example without this
any tests using 'clang' in the test suite will fail on PowerPC, since the
driver will avoid using clang.
- We don't want to actually ship something built this way, but that should be
handled via some sort of configuration file.
llvm-svn: 76886
2009-07-23 17:48:59 +00:00
Daniel Dunbar
54091b82b5
[llvm up] Add support for '#' component of QA_OVERRIDE_GCC3_OPTIONS.
...
- This silences the output about how command line arguments are being changed.
llvm-svn: 76107
2009-07-16 21:32:51 +00:00
Eli Friedman
7d369cd2a6
Misc fixes to fix tests on OpenBSD, per email to cfe-commits. Patches
...
by Jonathan Gray and Krister Walfridsson.
llvm-svn: 75268
2009-07-10 20:10:06 +00:00
Daniel Dunbar
10de9e6602
OpenBSD support.
...
- Patch by Jonathan Gray!
llvm-svn: 74453
2009-06-29 20:52:51 +00:00
Douglas Gregor
d04acaad93
Use env properly in test/Driver/analyze.c
...
llvm-svn: 73609
2009-06-17 15:41:17 +00:00
Douglas Gregor
ffbc629cd7
Make these driver tests do the right thing even when MACOSX_DEPLOYMENT_TARGET is set.
...
llvm-svn: 73583
2009-06-16 23:37:56 +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
Daniel Dunbar
db09702e2a
PR4016: Forward -fno-show-source-location to clang.
...
llvm-svn: 73082
2009-06-08 21:13:54 +00:00
Devang Patel
9e24386c65
Set function Attribute::NoImplicitFloat appropriately.
...
llvm-svn: 72961
2009-06-05 22:05:48 +00:00
Devang Patel
21dd8d4ae4
NoRedZone attribute test case.
...
llvm-svn: 72905
2009-06-04 23:45:55 +00:00
Daniel Dunbar
e90fa18d6c
Test for x86 target features, I forgot to commit this.
...
llvm-svn: 71492
2009-05-11 23:06:15 +00:00
Daniel Dunbar
e5ae096bf8
Tweak x86 -mcpu defaults.
...
- Default to yonah on Darwin (to get SSE3).
- Default to Pentium4 (32-bit) and x86-64 (64-bit) on
non-Darwin. Welcome to the 21st century.
llvm-svn: 71069
2009-05-06 04:58:14 +00:00
Daniel Dunbar
4dbaaa6f43
Improve handling of (X86) target features.
...
- This is a WIP...
- This adds -march= handling to the driver, and fixes the defaulting
of -mcpu on Darwin (which was using the wrong test).
Instead of handling -m{sse, ...} in the driver, pass them to clang-cc as
-target-feature [+-]name
In clang-cc, communicate with the (clang) target to discover the legal
features of a target, and the features which are enabled based on
-mcpu. This is currently hardcoded just enough to not be a feature
regression, we need to get this information from the backend's
TableGen information somehow.
This is used to construct the full list of features which are being
used, which is in turn used to initialize the predefines.
llvm-svn: 71061
2009-05-06 03:16:41 +00:00
Daniel Dunbar
4ddeb20743
Test a few more bits of the driver.
...
llvm-svn: 70816
2009-05-04 00:31:11 +00:00
Daniel Dunbar
5716d87ed1
Driver: When using the generic gcc tool, pass -m32 or -m64 if we
...
recognize the architecture.
- This is an attempt to force gcc to the write target.
- PR4094.
llvm-svn: 70647
2009-05-02 21:41:52 +00:00
Daniel Dunbar
e3e263fb71
Driver: Generate an error when trying to pass an LLVM bc input to a
...
non-Darwin linker (sorry Gold + LTO-plugin users).
llvm-svn: 70641
2009-05-02 20:14:53 +00:00
Daniel Dunbar
44e7122151
Make sure to pass the same options to the static analyzer as the
...
compiler.
- Code generation options may still affect the language...
llvm-svn: 70393
2009-04-29 18:32:25 +00:00
Douglas Gregor
c1547eb338
Force driver's PTH test to use PTH
...
llvm-svn: 70338
2009-04-28 22:43:20 +00:00
Daniel Dunbar
c1b1b4b2c9
Don't run dsymutil when making a fat executable direct source.
...
- Otherwise, we will end up with stray .dSYM files which don't get
lipo'ed or removed.
- Ideally we would run dsymutil on the result, but we don't have the
infrastructure for that yet. Note that gcc doesn't handle this case
either.
- <rdar://problem/6809621> [driver] clang leaves .dSYM files lying
around in tmp.
llvm-svn: 69951
2009-04-24 03:03:52 +00:00
Daniel Dunbar
838cbe19b7
Call ld, not collect2.
...
- <rdar://problem/6517382> [driver] call ld directly
llvm-svn: 69938
2009-04-23 23:17:23 +00:00
Daniel Dunbar
3f4a2c286e
Support QA_OVERRIDE_GCC3_OPTIONS
...
- Cover your eyes...
- This is a simple but effective way to allow developers to build a
project with clang while manipulating the command line, without
having to edit the project itself.
llvm-svn: 69342
2009-04-17 01:54:00 +00:00
Daniel Dunbar
5acb3a28e2
Force driver triple.
...
llvm-svn: 68836
2009-04-10 22:53:25 +00:00
Daniel Dunbar
b5023e90f4
Honor MACOSX_DEPLOYMENT_TARGET environment variable.
...
llvm-svn: 68822
2009-04-10 21:00:07 +00:00
Daniel Dunbar
d067f7fbef
Driver: Split out CPP specific options for clang so that we don't end
...
up adding them twice when running with -no-integrated-cpp or
-save-temps.
- <rdar://problem/6766636> -save-temps falls over with prefix headers
llvm-svn: 68660
2009-04-08 23:54:23 +00:00
Daniel Dunbar
d4510f2223
Driver: Fix forwarding of -fpascal-strings.
...
llvm-svn: 68570
2009-04-07 23:51:44 +00:00
Daniel Dunbar
c44b4ccca8
Driver: Fix forwarding of -{std,ansi,trigraphs} when there are
...
multiple instances of an option.
Also, removed direct -ansi support from clang-cc.
llvm-svn: 68558
2009-04-07 22:13:21 +00:00
Daniel Dunbar
b2a7c062aa
Driver: Fix a parsing bug where some options were matched
...
incorrectly. I'm blanking on the smartest way to write this search,
but we should just do the right thing when we move to TableGen.
- <rdar://problem/6761194> [driver] -Wextra-tokens isn't parsed
correctly
llvm-svn: 68525
2009-04-07 18:21:47 +00:00
Daniel Dunbar
f89733cfb8
Driver: Handle properly calling dsymutil when source input is
...
preceeded by a linker input flag.
- <rdar://problem/6757236> clang should make a dSYM when going
straight from source to binary
- This still matches gcc, but the right way to solve this would be to
detect the situation we care about (we are compiling from source
and linking in one step), instead of looking at the suffix of the
input file. The Tool doesn't quite have enough information to do
this yet, however.
- Also, find the suffix correctly.
llvm-svn: 68417
2009-04-04 00:55:30 +00:00
Daniel Dunbar
386ef885bb
Pull clang-cc code for generating PTH files based on the input type.
...
- <rdar://problem/6741594> [pth] don't abuse -x to drive pth
generation
- Simpler, and fixes PR3915.
Cleanup test cases for PTH:
- Update to use -emit-pth
- Removed PTH test of carbon.c and cocoa.mm; these didn't actually
verify anything, and since PTH is token based the extra coverage
(over cocoa.m) isn't particularly helpful.
- Split PTH tests in cocoa.m to cocoa-pth.m, solely to increase
available parallelism when running tests.
Ted, could you update the PTH test cases (include-pth.c and
cocoa-pth.m) to have some sort of positive check that the PTH is
getting used? "# of PTH cache hits" or "tokens read from PTH cache"
statistics would work great. :)
llvm-svn: 68189
2009-04-01 05:09:09 +00:00
Daniel Dunbar
ae8bca038d
Tweak/cleanup darwin::Link a bit, add several FIXMES, and improve test
...
case.
llvm-svn: 68182
2009-04-01 03:17:40 +00:00
Daniel Dunbar
d640be24fd
(LLVM up) Update to use llvm::sys::getHostTriple().
...
- Always pass -triple to clang-cc (-arch will be removed).
- clang-cc doesn't play guess work with the target triple anymore.
llvm-svn: 68119
2009-03-31 17:35:15 +00:00
Daniel Dunbar
13357aef14
Driver: Unbreak ArgList::hasFlag.
...
- <rdar://problem/6726511> [driver] clang does not have -msoft-float
hooked up.
llvm-svn: 68044
2009-03-30 18:13:26 +00:00
Daniel Dunbar
a88692df30
Missed test case update (part of previous commit)
...
llvm-svn: 68029
2009-03-30 06:49:40 +00:00
Daniel Dunbar
f64f5307dc
Driver: Add test case for darwin::Preprocess and darwin::Compile
...
tools, and enable them.
llvm-svn: 68019
2009-03-29 22:27:40 +00:00
Daniel Dunbar
42b91a86f3
Driver: Test case for darwin::Link
...
llvm-svn: 67761
2009-03-26 16:29:05 +00:00
Daniel Dunbar
c196421fbc
Driver: Add darwin::Link tool.
...
- <rdar://problem/6717381> [driver] implement ld argument translation
in new driver
llvm-svn: 67760
2009-03-26 16:23:12 +00:00
Daniel Dunbar
aabb0b11a3
Driver: Handle -Xarch_, including warning for nasty -Xarch_ use cases
...
we aren't going to support. For example:
clang -Xarch_i386 -S -Xarch_i386 -o -Xarch_i386 myi386asm.s ...
llvm-svn: 67680
2009-03-25 06:12:34 +00:00
Daniel Dunbar
1386495406
Driver: Handle -flto, -O4, and tweak -emit-llvm to match llvm-gcc.
...
- -emit-llvm no longer changes what compilation steps are done.
- -emit-llvm and -emit-llvm -S write output files with .o and .s
suffixes, respectively.
- <rdar://problem/6714125> clang-driver should support -O4 and -flto,
like llvm-gcc
llvm-svn: 67645
2009-03-24 20:17:30 +00:00
Daniel Dunbar
88f356e16b
Driver: Change default use of "clang" compiler.
...
- Don't default to using clang for C++ (use -ccc-clang-cxx to
override).
- Default to only using clang on i386 and x86_64 (use
-ccc-clang-archs "" to override).
- <rdar://problem/6712350> [driver] clang should not be used on
powerpc by default
- <rdar://problem/6705767> driver should default to -ccc-no-clang-cxx
I plan to add a warning that we are not using the clang compiler for
the given compilation so that users do not think clang is being used
in situations it isn't.
This change is motivated by the desire to be able to drop clang into a
build and have things "just work", even if it happens to get used to
compile C++ code or code for an architecture we don't support yet.
llvm-svn: 67640
2009-03-24 19:02:31 +00:00
Daniel Dunbar
038f5d6ef0
Driver: Translate -fverbose-asm for LLVM backend.
...
- <rdar://problem/6715707> driver should translate -fverbose-asm into
-asm-verbose
llvm-svn: 67634
2009-03-24 17:59:06 +00:00
Daniel Dunbar
9ea0e77572
Driver: ArgList::getLastArg was in fact returning the first matching arg.
...
- <rdar://problem/6715818> clang doesn't honor gcc semantic that last
-O optimization option wins.
llvm-svn: 67628
2009-03-24 17:31:30 +00:00
Daniel Dunbar
36245c5a90
Rename clang-driver to clang.
...
Again, I tried to update cmake but it is untested.
llvm-svn: 67606
2009-03-24 03:07:05 +00:00
Daniel Dunbar
a45cf5b6b0
Rename clang to clang-cc.
...
Tests and drivers updated, still need to shuffle dirs.
llvm-svn: 67602
2009-03-24 02:24:46 +00:00
Daniel Dunbar
4aacad1f93
Use not instead of ! in tests.
...
llvm-svn: 67601
2009-03-24 01:59:55 +00:00
Eli Friedman
04841eebcb
Fix a few more instances of "&>".
...
llvm-svn: 67496
2009-03-23 00:04:01 +00:00
Daniel Dunbar
d8500f3b0f
Driver: Implement 'missing argument' error.
...
llvm-svn: 67490
2009-03-22 23:26:43 +00:00
Eli Friedman
bae2042bb5
Don't use &> in tests; dash doesn't understand it.
...
llvm-svn: 67483
2009-03-22 21:49:20 +00:00
Daniel Dunbar
ea9f032613
ccc/Driver: .s defaults to 'assembler-with-cpp' on Darwin.
...
- <rdar://problem/6669441> ccc doesn't handle assembler-with-cpp
semantics correctly (but clang supports it)
- This is sad, because it requires a fairly useless target
hook. C'est la vie.
llvm-svn: 67418
2009-03-20 23:39:23 +00:00
Daniel Dunbar
60196720eb
Driver: Switch to using -include-pth.
...
llvm-svn: 67393
2009-03-20 19:38:56 +00:00
Daniel Dunbar
be2208472c
Driver: Add and use darwin::Assemble tool.
...
- Based on patch from Pieter de Bie; thanks!
llvm-svn: 67379
2009-03-20 16:06:39 +00:00
Daniel Dunbar
7ef5ed6c16
Driver: Fix bug in translating -O to clang, add clang-translation test
...
case.
llvm-svn: 67257
2009-03-18 23:39:35 +00:00
Daniel Dunbar
ea2be5e8ee
Add simple test case to make sure driver can generate executables.
...
- Hopefully Chris can pardon one executable test.
llvm-svn: 67251
2009-03-18 22:49:41 +00:00
Daniel Dunbar
328d4f0da8
Driver: Update test case.
...
llvm-svn: 67240
2009-03-18 21:17:39 +00:00
Daniel Dunbar
d00978bc0d
Driver: Add test for binding of precompile; exposed bug due to my
...
flawed idea that llvm::sys::Path::getBasename was a version of
basename().
llvm-svn: 67153
2009-03-18 02:00:31 +00:00
Daniel Dunbar
338d74898c
Driver: Implement JoinedAndSeparateArg::getValue and add parsing test
...
case.
llvm-svn: 67151
2009-03-18 01:48:37 +00:00
Daniel Dunbar
389fe1f563
Driver: Add test case for -ccc-clang-archs (which, it turns out, was
...
inverted).
llvm-svn: 67135
2009-03-18 00:12:31 +00:00
Daniel Dunbar
0071da951b
Driver: Add test case for various parts of binding (no-integrated-cpp,
...
-ccc-no-clang, -ccc-no-clang-cxx, -ccc-no-clang-cpp, -fsyntax-only).
llvm-svn: 67131
2009-03-17 23:39:24 +00:00
Daniel Dunbar
ebfef240ae
Test had extra line which was masking actual failures.
...
llvm-svn: 67130
2009-03-17 23:30:47 +00:00
Daniel Dunbar
8904d1adda
Driver: Add test for pipelining for analyzer and precompiler.
...
llvm-svn: 67129
2009-03-17 23:26:35 +00:00
Daniel Dunbar
71bdee6ea1
Driver: Make sure to get the default arch name from the tool chain, not the
...
host; the toolchain may differ based on command line arguments.
llvm-svn: 67106
2009-03-17 21:29:52 +00:00
Daniel Dunbar
c178c5f126
Driver: Desensitize test to location of input.
...
llvm-svn: 66950
2009-03-13 21:03:35 +00:00
Daniel Dunbar
192f4facac
Driver: Test pipelining for universal builds.
...
llvm-svn: 66942
2009-03-13 20:45:03 +00:00
Daniel Dunbar
c5a5ac5015
Driver: Fix '-x none' handling.
...
- Enough stuff works now we can test argument parsing & pipelining.
llvm-svn: 66913
2009-03-13 17:57:10 +00:00
Daniel Dunbar
51adf5824e
Rename lib/Driver (etc) to lib/Frontend in prep for the *actual*
...
driver taking lib/Driver.
llvm-svn: 65811
2009-03-02 06:16:29 +00:00
Chris Lattner
f7ae0d1fb2
just remove this insane testcase :)
...
llvm-svn: 64087
2009-02-08 19:44:51 +00:00
Sebastian Redl
aa400d83e6
Make the test cases failing due to exact diagnostic matching XFAIL.
...
llvm-svn: 64080
2009-02-08 10:28:44 +00:00
Nuno Lopes
0c92d25f2b
avoid creating tmp files elsewhere
...
llvm-svn: 63518
2009-02-02 15:33:56 +00:00
Chris Lattner
64d8fc25d6
fix a crash I introduced, thanks to Ted for the awesome reduced
...
testcase :)
llvm-svn: 63182
2009-01-28 05:42:38 +00:00
Chris Lattner
fd384b1b3a
Change -verify mode to find the "expected-error" and "expected-warning" strings
...
with a raw lexer instead of a PP lexer. This means that -verify doesn't scan
#include'd headers for expected-error/warning strings, and it also means that it
doesn't ignore them in #if 0.
llvm-svn: 59774
2008-11-21 01:18:36 +00:00
Daniel Dunbar
0af89ff0fb
Add -rewrite-macros test case.
...
llvm-svn: 57094
2008-10-05 01:39:04 +00:00
Daniel Dunbar
4777ba0102
Desensitize env-include-paths.c to the directory it is running in.
...
- It would probably be better if TestRunner.sh canonicalized this.
llvm-svn: 57075
2008-10-04 21:05:04 +00:00
Daniel Dunbar
3ca0a634c2
Bug fix, CPATH="" does not add '.' to search path.
...
llvm-svn: 57072
2008-10-04 20:58:18 +00:00
Daniel Dunbar
23bd6cc156
Add test/Driver.
...
- env-include-paths.c is XFAIL as it exposed a bug.
Add test/Coverage.
- For tests which achieve code coverage but don't validate anything.
llvm-svn: 57070
2008-10-04 20:46:41 +00:00