summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver
Commit message (Collapse)AuthorAgeFilesLines
* refactor -ccc-gcc-name codeDylan Noblesmith2011-04-092-16/+22
| | | | | | | | | | | | Put the logic for deciding the default name for gcc/g++ in the only place that actually cares about it. This also pushes an ifdef out of the generic driver code to a little further down, when the target is actually known. Hopefully it can be changed into just a runtime check in the future. llvm-svn: 129212
* Rename -mtrap_function= to -ftrap_function= since it's now a target neutral ↵Evan Cheng2011-04-081-11/+7
| | | | | | options. llvm-svn: 129153
* Add -mtrap_function=<> option. rdar://9257465Evan Cheng2011-04-081-0/+11
| | | | llvm-svn: 129145
* fix a typo, patch by PaX team.Chris Lattner2011-04-081-1/+1
| | | | llvm-svn: 129141
* Driver: Don't attempt to forward some Clang-only options to cc1.Daniel Dunbar2011-04-071-0/+6
| | | | llvm-svn: 129108
* Driver: Sketch driver support for a CC_LOG_DIAGNOSTICS options, similar to theDaniel Dunbar2011-04-072-4/+12
| | | | | | | existing CC_PRINT_OPTIONS and CC_PRINT_HEADERS, which can be used to transparently capture the compiler diagnostics from a build. llvm-svn: 129082
* Add support for Fedora16, gcc 4.6.0 and Fedora Rawhide.Eric Christopher2011-04-061-7/+16
| | | | | | Patch by Bobby Powers llvm-svn: 129014
* Add ToolChain support to get Clang to recognize Ubuntu/ppc and Gentoo/ppc64.Ted Kremenek2011-04-052-10/+39
| | | | llvm-svn: 128944
* Move Driver::createInvocationFromArgs function to Frontend library to avoid ↵Argyrios Kyrtzidis2011-04-041-70/+0
| | | | | | | | dependency cycle between libFrontend and libDriver. llvm-svn: 128852
* Introduce Driver::createInvocationFromArgs used to create a ↵Argyrios Kyrtzidis2011-04-041-0/+70
| | | | | | CompilerInvocation from command-line args. llvm-svn: 128848
* Driver/Darwin: Tweak simulator link logic a bit more to be closer to GCC.Daniel Dunbar2011-04-011-2/+8
| | | | llvm-svn: 128738
* Driver/Darwin: Tweak link logic for simulator.Daniel Dunbar2011-03-312-1/+14
| | | | llvm-svn: 128641
* Integrated-As: Support -Wa,-L when using the integrated assembler.Daniel Dunbar2011-03-281-4/+1
| | | | llvm-svn: 128433
* Add an option to suppress include stack printing on note diagnostics.Chandler Carruth2011-03-271-0/+10
| | | | | | | | | | | | | | | | | | These stacks are often less important than those on primary diagnostics. As the number of notes grows, this becomes increasingly important. The include stack printing is clever and doesn't print stacks for adjacent diagnostics from the same file, but when a note is in between a sequence of errors in a header file, and the notes all refer to some other file, we end up getting a worst-case ping-pong of include stacks that take up a great deal of vertical space. Still, for now, the default behavior isn't changed. We can evaluate user feedback with the flag. Patch by Richard Trieu, a couple of style tweaks from me. llvm-svn: 128371
* Add -f[no-]strict-overflow to the Clang driver. Use it to set theChandler Carruth2011-03-271-1/+11
| | | | | | | | | default for -fwrapv if that flag isn't specified explicitly. We always prefer an explict setting of -fwrapv when present. Also adds support for -fno-wrapv to allow disabling -fwrapv even when -fno-strict-overflow is passed. llvm-svn: 128353
* Driver/Darwin: Dsymutil actions should put the dSYM adjacent to the output file.Daniel Dunbar2011-03-251-1/+7
| | | | llvm-svn: 128292
* Rework checker "packages" and groups to be more hierarchical.Ted Kremenek2011-03-241-16/+7
| | | | llvm-svn: 128187
* switch a few Driver APIs to use llvm::ArrayRef, cleaning up code.Chris Lattner2011-03-231-7/+5
| | | | llvm-svn: 128142
* Frontend: Add a more explicit -backend-option flag for passing backend commandDaniel Dunbar2011-03-221-3/+3
| | | | | | | | 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
* Add clang support for cortex-m0 cpus. Patch by James Orr.Bob Wilson2011-03-213-1/+12
| | | | llvm-svn: 128018
* Introduce FindTargetProgramPath to check for a target-specific helperJoerg Sonnenberger2011-03-211-4/+15
| | | | | | | | program and fallback to plain version otherwise. Use this for the NetBSD target to make it try e.g. i486--netbsdelf-as and -ld for target i486--netbsdelf. llvm-svn: 127996
* Memorize presence/absence of -nostdlib in Driver.Joerg Sonnenberger2011-03-212-8/+9
| | | | | | | Drop program paths on NetBSD (unused). Only include lib dir, if -nostdlib is absent. Use = to allow --sysroot to work. llvm-svn: 127995
* Remember sysroot in Driver. Pass it down to ld for NetBSD, FreeBSDJoerg Sonnenberger2011-03-212-6/+25
| | | | | | | and DragonFly. Use the --sysroot= form for Linux. Fix handling of = prefix for -B. llvm-svn: 127994
* Driver: Forward -traditional and -traditional-cpp in preprocessing modes.Daniel Dunbar2011-03-181-2/+7
| | | | | | | | | - We don't really support the majority of the horrible -traditional-cpp behavior, but it is unlikely that we ever will either. This allows us to start trying to use clang as a /usr/bin/cpp replacement and see what pieces of -traditional-cpp mode people actually care about. llvm-svn: 127911
* Driver/Darwin: Transparently fallback when compiling i386 -fapple-kext code, weDaniel Dunbar2011-03-181-3/+12
| | | | | | don't support the ABI yet. llvm-svn: 127903
* Driver: Give SelectTool access to the action inputs.Daniel Dunbar2011-03-183-31/+54
| | | | llvm-svn: 127902
* Driver/Darwin: Change fallback to use llvm-gcc search paths instead of GCC.Daniel Dunbar2011-03-181-4/+6
| | | | llvm-svn: 127897
* Driver/Darwin: Kill the DarwinGCC toolchain.Daniel Dunbar2011-03-183-186/+1
| | | | llvm-svn: 127896
* On !Darwin, do use the integrated as with -static.Rafael Espindola2011-03-181-1/+3
| | | | llvm-svn: 127879
* The Darwin kernel does not provide useful guard variable support.John McCall2011-03-181-0/+6
| | | | | | | | Issue this as an IR-gen error; it's not really worthwhile doing this "right", i.e. in Sema, because IR gen knows a lot of tricks beyond what the constant evaluator knows. llvm-svn: 127854
* Driver/Obj-C: Be compatible with GCC behavior in that -fno-exceptions *does not*Daniel Dunbar2011-03-171-19/+10
| | | | | | disable Obj-C exceptions. llvm-svn: 127836
* Driver/Darwin: These are command line options, not target features.Daniel Dunbar2011-03-171-2/+2
| | | | llvm-svn: 127820
* Driver/Darwin: Suppress spurious warning about -force_cpusubtype_ALL.Daniel Dunbar2011-03-171-1/+2
| | | | llvm-svn: 127819
* Driver/Darwin/ARM: Kernel/kext code has more strict alignment requirements.Daniel Dunbar2011-03-172-5/+16
| | | | llvm-svn: 127815
* Driver/ARM: Match GCC behavior in that -msoft-float disables NEON, despite thisDaniel Dunbar2011-03-171-0/+7
| | | | | | not being consistent at all with other parts of the GCC implementation. llvm-svn: 127777
* Use C as fallback type if in C preprocessor mode.Joerg Sonnenberger2011-03-161-4/+9
| | | | llvm-svn: 127769
* Support Ubuntu hardy and intrepid, from Thomas Gamper!Douglas Gregor2011-03-141-2/+10
| | | | llvm-svn: 127583
* Re-enable the IdempotentOperations checker for --analyze, and put it and the ↵Ted Kremenek2011-03-121-1/+2
| | | | | | DeadStores checker into the "deadcode" group. llvm-svn: 127531
* Redo part of r127137:Joerg Sonnenberger2011-03-071-5/+5
| | | | | | | | Pass down the correct C->getArgs, but keep it with the original DerivedArgList type. Slightly adjust the MakeIndex call for the different base type. This unbreaks the handling of --no-mangle on Darwin. llvm-svn: 127142
* Explicitly initialize CCCIsCPPJoerg Sonnenberger2011-03-071-2/+2
| | | | llvm-svn: 127139
* If called as *cpp or *cpp-[^-]*, run only the preprocessor. If noJoerg Sonnenberger2011-03-062-8/+18
| | | | | | | input is specified, use stdin implicitly. Based on a patch from Roman Divacky. llvm-svn: 127137
* Fix driver for thumb-capable ARM hosts, from Mikko Lehtonen!Douglas Gregor2011-03-062-6/+11
| | | | llvm-svn: 127128
* Normalize target triple passed out of driver. Basically this meansAnton Korobeynikov2011-03-051-1/+1
| | | | | | | | that at cc1 level we will always have normalized triple and thus can provide necessary default based on e.g. environment value (e.g. for "arm-eabi" triple, etc.) llvm-svn: 127087
* build: Allow disabling movt/movw from build, for testing purposes.Daniel Dunbar2011-03-021-0/+6
| | | | llvm-svn: 126810
* Since getDriver().getInstalledDir() returns a const char *, don't try toBenjamin Kramer2011-03-011-3/+3
| | | | | | | | | | | | | compare it with getDriver().Dir.c_str(), since that is a pointer comparison, not a "are these strings equal" comparison. Instead, just compare with getDriver().Dir directly, so both sides will get promoted to std::string, and the regular std::string comparison operator applies. Patch by Dimitry Andric! llvm-svn: 126791
* Driver/Darwin: Be bug compatible with GCC and ignore -pg on ARM.Daniel Dunbar2011-03-013-3/+13
| | | | llvm-svn: 126767
* The default CPU on FreeBSD for i386 should be i486, not pentium4.Roman Divacky2011-03-011-0/+5
| | | | | | Patch by Dimitry Andric! llvm-svn: 126763
* On FreeBSD, we don't want 'getDriver().Dir + "/../lib"' added to theRoman Divacky2011-03-011-4/+0
| | | | | | | | | | | | | ToolChain's FilePaths. If clang is installed as a port in /usr/local, it is *not* supposed to use /usr/local/lib by default, for example. Additionally, there are no clang-related executables in either /usr/libexec, or getDriver().Dir + "/../libexec", anymore, so remove that from the ToolChain's ProgramPaths. Patch by Dimitry Andric! llvm-svn: 126760
* For linking on FreeBSD, don't add a hardcoded "-L/usr/lib", butRoman Divacky2011-03-011-7/+7
| | | | | | | | | | | retrieve the library paths from the ToolChain object instead. Copy the relevant code from linuxtools::Link::ConstructJob(), and replace the std::string stuff with llvm::StringRef, while we're here. Patch by Dimitry Andric! llvm-svn: 126757
* Implement -mrtd which sets the StdCall calling convention to be the defaultRoman Divacky2011-03-011-0/+3
| | | | | | one. llvm-svn: 126756
OpenPOWER on IntegriCloud