summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/Tools.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Warn when requesting compress-debug-sections and zlib is not availableDavid Blaikie2014-03-311-2/+7
| | | | | | | Another shot in the dark, since I do have zlib installed. Will be watching the bots for fallout. llvm-svn: 205265
* ARM64: initial clang support commit.Tim Northover2014-03-291-4/+66
| | | | | | | | | | | This adds Clang support for the ARM64 backend. There are definitely still some rough edges, so please bring up any issues you see with this patch. As with the LLVM commit though, we think it'll be more useful for merging with AArch64 from within the tree. llvm-svn: 205100
* Driver: implement addClangWarningOptionsTim Northover2014-03-291-0/+5
| | | | | | | This function allows certain platforms to enable or disable diagnostics by default. llvm-svn: 205095
* InstrProf: Emit runtime hook directly in IRGenDuncan P. N. Exon Smith2014-03-281-7/+0
| | | | | | | | | | | | | | | | | | -u behaviour is apparently not portable between linkers (see cfe-commits discussions for r204379 and r205012). I've moved the logic to IRGen, where it should have been in the first place. I don't have a Linux system to test this on, so it's possible this logic *still* doesn't pull in the instrumented profiling runtime on Linux. I'm in the process of getting tests going on the compiler-rt side (llvm-commits "[PATCH] InstrProf: Add initial compiler-rt test"). Once we have tests for the full flow there, the runtime logic should get a whole lot less brittle. <rdar://problem/16458307> llvm-svn: 205023
* Revert "Link in profile library on Linux using --whole-archive"Duncan P. N. Exon Smith2014-03-281-6/+8
| | | | | | This reverts commit r205012. llvm-svn: 205022
* Link in profile library on Linux using --whole-archiveAlexey Samsonov2014-03-281-8/+6
| | | | llvm-svn: 205012
* Add ARM big endian Target (armeb, thumbeb)Christian Pirker2014-03-281-6/+49
| | | | | | Reviewed at http://llvm-reviews.chandlerc.com/D3096 llvm-svn: 205008
* Use the new Windows environment for target detectionSaleem Abdulrasool2014-03-271-22/+20
| | | | | | | | | This follows the LLVM change to canonicalise the Windows target triple spellings. Rather than treating each Windows environment as a single entity, the environments are now modelled properly as an environment. This is a mechanical change to convert the triple use to reflect that change. llvm-svn: 204978
* Support for -Wa,-compress-debug-sections.David Blaikie2014-03-271-1/+7
| | | | | | Also, while I'm here, support -nocompress-debug-sections too. llvm-svn: 204959
* InstrProf: Pull in runtime on non-DarwinDuncan P. N. Exon Smith2014-03-271-0/+7
| | | | | | | r204379 changed the way the profile runtime gets pulled in, but missed updating non-Darwin targets. llvm-svn: 204939
* Use an option alias to implement -gmltDavid Blaikie2014-03-251-2/+1
| | | | | | Review feedback from Reid Kleckner on r203603. llvm-svn: 204755
* Fix an logic error in the clang driver preventing crtfastmath.o from linking ↵Benjamin Kramer2014-03-251-7/+0
| | | | | | | | | | | | | | when -Ofast is used without -ffast-math In gcc using -Ofast forces linking of crtfastmath.o. In the current clang crtfastmath.o is only linked when -ffast-math/-funsafe-math-optimizations passed. It can lead to performance issues, when using only -Ofast without explicit -ffast-math (I faced with it). My patch fixes inconsistency with gcc behaviour and also introduces few tests on it. Patch by Zinovy Nis! Differential Revision: http://llvm-reviews.chandlerc.com/D3114 llvm-svn: 204742
* clang-cl: make /Gy imply -fdata-sections in addition to -ffunction-sectionsHans Wennborg2014-03-251-0/+6
| | | | llvm-svn: 204736
* clang-cl: Forward /Gy or /Gy- when falling back to cl.exeHans Wennborg2014-03-251-0/+5
| | | | llvm-svn: 204723
* Update the parameters passed to the assembler and linker forWill Schmidt2014-03-241-1/+4
| | | | | | | | | | the PPC64LE target. Specifically: (assembler) adds/uses -mppc64 -mlittle-endian (linker) adds/uses elf64lppc Testcase included. llvm-svn: 204626
* Kill -faddress-sanitizer, -fthread-sanitizer and -fcatch-undefined-behavior ↵Alexey Samsonov2014-03-201-2/+1
| | | | | | | | | flags. These flags are deprecated since at least Clang 3.3. Users should instead use -fsanitize= with appropriate values. llvm-svn: 204330
* Add support for sanitizers arguments on FreeBSDViktor Kutuzov2014-03-181-2/+10
| | | | llvm-svn: 204129
* AArch64_be specific clang target settingsChristian Pirker2014-03-141-0/+4
| | | | llvm-svn: 203918
* [Modules] Emit the module file paths as dependencies of the PCH when we are ↵Argyrios Kyrtzidis2014-03-141-0/+3
| | | | | | | | | | | building one. This is because the PCH is tied to the module files, if one of the module files changes or gets removed the build system should re-build the PCH file. rdar://16321245 llvm-svn: 203885
* Always use --eh-frame-hdr on NetBSD, even for -static.Joerg Sonnenberger2014-03-131-1/+1
| | | | llvm-svn: 203742
* Add an option -fmodules-validate-system-headersBen Langmuir2014-03-121-0/+2
| | | | | | | | When enabled, always validate the system headers when loading a module. The end result of this is that when these headers change, we will notice and rebuild the module. llvm-svn: 203630
* Driver: Support -gmlt as an alias for -gline-tables-onlyDavid Blaikie2014-03-111-1/+2
| | | | llvm-svn: 203603
* [OPENMP] Fixed linked libraries for libiomp5 on LinuxAlexey Bataev2014-03-071-1/+1
| | | | llvm-svn: 203212
* Update for LLVM API changeSaleem Abdulrasool2014-03-061-6/+7
| | | | | | | Use the new getObjectFormat/setObjectFormat instead of Environment now that the file format is a separate field. llvm-svn: 203161
* [OPENMP] Added option -fopenmp=libiomp5|libgompAlexey Bataev2014-03-061-6/+48
| | | | llvm-svn: 203081
* Pass llvm::Triple objects by const reference.Benjamin Kramer2014-03-041-2/+2
| | | | | | Copying isn't cheap as it contains a std::string. llvm-svn: 202880
* Introduce '-fmodules-user-build-path' which accepts the "canonical" path to ↵Argyrios Kyrtzidis2014-03-031-0/+7
| | | | | | | | | | a user workspace build. This is used to avoid conflicts with user modules with the same name from different workspaces. rdar://16042513 llvm-svn: 202683
* Add support for OpenBSD SPARC assembler.Rafael Espindola2014-02-281-7/+32
| | | | | | Patch by Brad Smith. llvm-svn: 202462
* Pass the sparc architecture variant to the assembler.Roman Divacky2014-02-251-0/+5
| | | | llvm-svn: 202179
* clang-cl: use -fno-rtti by defaultHans Wennborg2014-02-251-0/+4
| | | | | | | Generating RTTI in the MS ABI is currently not supported, and the failures are confusing to users, so let's disable it by default for now. llvm-svn: 202178
* Give sparcv9 the ability to set the target cpu. Change it from acceptingRoman Divacky2014-02-251-1/+2
| | | | | | | -march which doesnt exist on sparc gcc to -mcpu. While here adjust a few tests to not write an unused temporary file. llvm-svn: 202177
* Add AArch64 big endian Target (aarch64_be)Christian Pirker2014-02-251-0/+3
| | | | llvm-svn: 202151
* Respect ToolChain::isPIEDefault() in constructing link job on Linux and FreeBSD.Alexey Samsonov2014-02-251-6/+8
| | | | | | Partially based on http://llvm-reviews.chandlerc.com/D2644 by Viktor Kutuzov. llvm-svn: 202150
* Factor adding sanitizer linker flags into a separate function and make it ↵Alexey Samsonov2014-02-251-62/+63
| | | | | | less OS-specific llvm-svn: 202148
* Implement -fno-short-wcharRichard Barton2014-02-241-1/+2
| | | | llvm-svn: 202058
* clang: add -f{no-,}integrate-as as consistent parametersSaleem Abdulrasool2014-02-231-3/+3
| | | | | | | | The integrated assembler is a feature. This makes the new flags the default option, and the previous versions aliases. Ideally, at some point the aliases would be entirely removed. llvm-svn: 201963
* clang: forward -no-integrated-as from the driverSaleem Abdulrasool2014-02-221-2/+7
| | | | | | | | | | | | | | Forward the -no-integrated-as option to -cc1 rather than simply invoking the appropriate tool. This is useful since this option has been overloaded to permit disabling of parsing inline assembly at the MC layer. This re-applies the previous version of the patch with a renaming of the driver option to the public name rather than the internal name (-target vs -triple). The actual failure is fixed separately of an overly aggressive negative pattern match in the MIPS driver tests. It also fixes the incorrect test for targets that have the integrated assembler disabled by default. llvm-svn: 201960
* Revert "clang: forward -no-integrated-as from the driver"Saleem Abdulrasool2014-02-221-7/+2
| | | | | | This seems to break a MIPS test. Revert until I figure out the root cause. llvm-svn: 201954
* clang: forward -no-integrated-as from the driverSaleem Abdulrasool2014-02-221-2/+7
| | | | | | | | Forward the -no-integrated-as option to -cc1 rather than simply invoking the appropriate tool. This is useful since this option has been overloaded to permit disabling of parsing inline assembly at the MC layer. llvm-svn: 201952
* Default to ARMv5e for NetBSD/EABI, ARMv4 for APCS.Joerg Sonnenberger2014-02-211-4/+20
| | | | llvm-svn: 201894
* Add support for FPv4-SP to the clang driverOliver Stannard2014-02-211-0/+5
| | | | | | | | | | | | | Added two new options for -mfpu when targetting ARM: * fpv4-sp-d16 * fp4-sp-d16 The first is the same spelling as gcc. The lack of a leading `v' is correct, this is consistent with ARM's documentation and gcc's spelling of the option. llvm-svn: 201846
* Get rid of obsolete addProfileRT(), generalize the relevant ↵Alexey Samsonov2014-02-201-31/+15
| | | | | | addProfileRTLinux() to all OS llvm-svn: 201789
* Hook up NetBSD/sparc and NetBSD/sparc64 as and ld invocations.Joerg Sonnenberger2014-02-191-0/+23
| | | | llvm-svn: 201730
* GC now unused variable.Joerg Sonnenberger2014-02-191-4/+0
| | | | llvm-svn: 201728
* Use a switch for the architecture specific logic inJoerg Sonnenberger2014-02-191-12/+16
| | | | | | netbsd::Assemble::ConstructJob. llvm-svn: 201725
* clang-cl: Pass /Z7 when we fallback to cl with debug info enabledReid Kleckner2014-02-191-0/+2
| | | | | | | Clang itself only emits CodeView line tables, so it seems more consistent to ask cl.exe for the same format. llvm-svn: 201721
* Refactor -KPIC handling for as invocation.Joerg Sonnenberger2014-02-191-53/+21
| | | | llvm-svn: 201719
* Add FreeBSD ARM EABI hard-float supportRenato Golin2014-02-191-3/+20
| | | | | | Patch by Andrew Turner. llvm-svn: 201662
* Revert "Debug info: Make DWARF4 the default for Darwin, too."Adrian Prantl2014-02-171-2/+10
| | | | | | | | | I'm holding this change to give maintainers of Darwin buildbots more time to update their toolchains. This reverts commit r201375. llvm-svn: 201520
* Enable generation of unwind tables when building with sanitizers.Evgeniy Stepanov2014-02-141-4/+5
| | | | llvm-svn: 201391
OpenPOWER on IntegriCloud