summaryrefslogtreecommitdiffstats
path: root/clang/test/Driver/darwin-ld.c
Commit message (Collapse)AuthorAgeFilesLines
* Support watchOS and tvOS driver optionsTim Northover2015-10-301-0/+84
| | | | | | | | This patch should add support for almost all command-line options and driver tinkering necessary to produce a correct "clang -cc1" invocation for watchOS and tvOS. llvm-svn: 251706
* Revert "[DarwinDriver] Use -lto_library to specify the path for libLTO.dylib"Bruno Cardoso Lopes2015-09-301-15/+0
| | | | | | Revert r248932. Bots complaining about new warnings where they shouldn't. llvm-svn: 248935
* [DarwinDriver] Use -lto_library to specify the path for libLTO.dylibBruno Cardoso Lopes2015-09-301-0/+15
| | | | | | | | | | | | | | | | | | | | Usually, when using LTO with a clang installation newer than the system's one, there's a libLTO.dylib version mismatch and LTO fails. One solution to this is to make ld point to the right libLTO.dylib by changing DYLD_LIBRARY_PATH. However, ld64 supports specifying the complete path to the desired libLTO.dylib through the -lto_library option. This commit adds support for the clang driver to use this option whenever it's capable of finding a libLTO.dylib in clang's installed library directory. This way, we don't need to rely on DYLD_LIBRARY_PATH nor get caught by version mismatches. Differential Revision: http://reviews.llvm.org/D13117 rdar://problem/7363476 llvm-svn: 248932
* -iframework option should be forwarded to linkerSteven Wu2015-02-061-0/+6
| | | | | | | | | | | | | | | Summary: -iframework option is used to specified System framework path so the path specified should be passed to linker as -F option rdar://problem/18234544 Reviewers: bob.wilson Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D7106 llvm-svn: 228413
* Remove a FIXME: use the ios_simulator_version_min linker option consistently.Bob Wilson2014-10-101-4/+14
| | | | | | | | | | | | This was previously only used when explicitly requested with a command line option because it had to work with some old versions of the linker when it was first introduced. That is ancient history now, and it should be safe to use the correct option even when using the IPHONEOS_DEPLOYMENT_TARGET environment variable to specify that the target is the iOS simulator. Besides updating the test for this, I also added a few more tests for the iOS linker options. llvm-svn: 219527
* ARM64: initial clang support commit.Tim Northover2014-03-291-0/+13
| | | | | | | | | | | 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
* Fix an assertion failure when building for the iOS simulator. rdar://15959009Bob Wilson2014-02-011-0/+8
| | | | | | | | | | | | | | When building for i386 or x86_64 with IPHONEOS_DEPLOYMENT_TARGET set in the environment, the toolchain correctly recognizes that the target platform is the iOS simulator. The code in Darwin::addMinVersionArgs was not updated for svn 197148, where isTargetIPhoneOS() was widely replaced by isTargetIOSBased(). This is kind of a strange case, though, because we probably ought to be passing -ios_simulator_version_min to the linker, but according to the FIXME in the code, we intentionally avoid that unless the -mios-simulator-version-min option was used. I don't know whether it is safe to change that yet, so for now, I am just fixing the assertion failure. llvm-svn: 200618
* Stop linking with crt1.o etc. for the iOS simulator. <rdar://problem/11800973>Bob Wilson2014-01-211-0/+16
| | | | | | | | Recent versions of the iOS simulator no longer require linking with the crt1.o, dylib1.o, or bundle1.o files. The relevant code is now included in libSystem for the simulator. llvm-svn: 199696
* [Driver] Fix a typo in the setting of the arch name when -arch x86_64h is used.Quentin Colombet2014-01-081-0/+9
| | | | | | <rdar://problem/15711488> llvm-svn: 198722
* Propagate "-arch x86_64h" setting to the linker. <rdar://problem/15711488>Bob Wilson2013-12-281-1/+5
| | | | | | | | | This is a follow-up to r194907, which added a new -arch setting to make it easier to specify AVX2 targets. The "-arch x86_64h" option needs to be passed on to the linker, but it was getting canonicalized to x86_64 by the code in getArchTypeForDarwinArchName. llvm-svn: 198096
* Only use the Darwin linker's -export_dynamic option with supported versions.Bob Wilson2013-08-021-0/+14
| | | | | | Related to <rdar://problem/14578094>. llvm-svn: 187680
* Un-revert r164907 and r164902 (+ follow-ups), 10.6 build fix to follow.Daniel Dunbar2012-10-151-0/+4
| | | | llvm-svn: 165988
* Revert r164907 and r164902 (+ follow-ups). They broke building on 10.6.Nico Weber2012-10-151-4/+0
| | | | | | See PR14013. llvm-svn: 165962
* Fix test for r165028. It only generates that flag for source files now.Bill Wendling2012-10-021-1/+1
| | | | | | <rdar://problem/12401423> llvm-svn: 165029
* Add Clang support for iOS6.Bob Wilson2012-09-291-0/+4
| | | | llvm-svn: 164907
* When using -pg targeting OS X 10.8, pass -no_new_main to the linker.Bob Wilson2012-07-031-0/+5
| | | | | | | | | | By default on OS X 10.8, we don't link with a crt1.o file and the linker knows to use _main as the entry point. But, when compiling with -pg, we need to link with the gcrt1.o file, and the linker needs to be told to use the "start" symbol as the entry point. The -no_new_main linker option does that last part. <rdar://problem/11491405> llvm-svn: 159683
* Add clang support for new Objective-C literal syntax for NSDictionary, NSArray,Ted Kremenek2012-03-061-0/+4
| | | | | | | | | | | | | NSNumber, and boolean literals. This includes both Sema and Codegen support. Included is also support for new Objective-C container subscripting. My apologies for the large patch. It was very difficult to break apart. The patch introduces changes to the driver as well to cause clang to link in additional runtime support when needed to support the new language features. Docs are forthcoming to document the implementation and behavior of these features. llvm-svn: 152137
* Fix more fallout from the introduction of "macosx" and "ios" triples.Bob Wilson2012-01-311-0/+8
| | | | | | | | | | | | The Darwin toolchain constructor was assuming that all Darwin triples would have an OS string starting with "darwin". Triples starting with "macosx" would misinterpret the version number, and "ios" triples would completely miss the version number (or worse) because the OS name is not 6 characters long. We lose some sanity checking of triple strings here, since the Triple.getOSVersion function doesn't do all the checking that the previous code did, but this still seems like a step in the right direction. llvm-svn: 149422
* rename -ccc-host-triple into -targetSebastian Pop2012-01-201-18/+18
| | | | llvm-svn: 148582
* Revert r148138; it's causing test failures.Eli Friedman2012-01-131-18/+18
| | | | llvm-svn: 148141
* rename -ccc-host-triple into -targetSebastian Pop2012-01-131-18/+18
| | | | llvm-svn: 148138
* [driver] Add support for passing -lazy_framework/-lazy_library to the linker.Chad Rosier2012-01-051-0/+14
| | | | | | rdar://10630328 llvm-svn: 147591
* tests/Driver/darwin-ld.c: Get rid of the "splatter" test case. We have enoughDaniel Dunbar2011-11-171-13/+0
| | | | | | | other coverage that actually properly checks features such that this test is not really adding value anymore. llvm-svn: 144868
* Driver/Darwin: -force_load can be specified multiple times.Daniel Dunbar2011-06-281-0/+8
| | | | llvm-svn: 134025
* Fix test case; we may end up linking against the libprofile_rt dylib.Douglas Gregor2011-06-281-1/+1
| | | | llvm-svn: 134006
* Driver/Darwin: Fixup version check for -object_path_lto support.Daniel Dunbar2011-06-211-1/+1
| | | | llvm-svn: 133548
* Driver/Darwin: When invoking the linker, automatically pass -object_path_lto soDaniel Dunbar2011-06-211-0/+8
| | | | | | | | | 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
* Add support for -force_load flag, for compat with Apple gcc. rdar://9555962 .Eli Friedman2011-06-161-2/+2
| | | | llvm-svn: 133218
* Fix the Windows buildbots, now that I can actually see what was going wrong ↵Eli Friedman2011-06-031-1/+1
| | | | | | with this test. llvm-svn: 132521
* Switch a ridiculous grep over to FileCheck.Eli Friedman2011-06-021-1/+2
| | | | llvm-svn: 132496
* Change how we link libprofile_rt.a. While at it, refactor the code a bit.Rafael Espindola2011-06-021-1/+1
| | | | llvm-svn: 132474
* Fix Darwin test for r132006.Nick Lewycky2011-05-241-1/+1
| | | | llvm-svn: 132013
* Driver/Darwin: Put dsymutil -o arguments first, so that dysmutil doesn't barfDaniel Dunbar2011-05-091-2/+2
| | | | | | | when POSIXLY_COMPLIANT is set. - Patch by Dave Vasilevsky! llvm-svn: 131084
* Driver/Darwin/ld: Set the deployment target following the version information inDaniel Dunbar2011-04-281-2/+2
| | | | | | the tool chain, instead of based on the translated arguments. llvm-svn: 130440
* Fix last test still failing on Win32. 100% pass rate now!Francois Pichet2010-09-111-11/+11
| | | | llvm-svn: 113702
* Driver/Darwin: Switch to using simplified tool chain by default -- what betterDaniel Dunbar2010-08-231-16/+2
| | | | | | way to see what will break! :) llvm-svn: 111840
* Driver/Darwin: Pass -demangle when linking, if the linker supports it.Daniel Dunbar2010-08-111-0/+23
| | | | llvm-svn: 110873
* Driver/Darwin: Pass -pie/-no_pie to the linker when -fpie/-fno-pie and friendsDaniel Dunbar2010-07-131-0/+12
| | | | | | are explicitly given. llvm-svn: 108297
* Driver: Also mark -F as RenderJoined, the linker doesn't like "-F FOO" either.Daniel Dunbar2010-06-101-1/+1
| | | | llvm-svn: 105789
* tests: Update test for previous change.Daniel Dunbar2010-06-091-1/+1
| | | | llvm-svn: 105766
* Driver/Darwin: Model dsymutil properly, as a separate action/tool kind which isDaniel Dunbar2010-06-041-4/+0
| | | | | | | 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
* Simplify test, in the hopes of making linux happy.Daniel Dunbar2010-04-111-1/+1
| | | | llvm-svn: 100955
* Driver: Only add extra -L paths on darwin if they exist. Unfortunately, thisDaniel Dunbar2010-04-101-1/+1
| | | | | | | | 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
* Tweak test for portability.Daniel Dunbar2010-04-101-1/+1
| | | | llvm-svn: 100931
* Driver/Darwin/x86: When linking, incorporate -L paths based on the path whereDaniel Dunbar2010-04-101-1/+1
| | | | | | | | | 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
* Driver: Force joining of "-l" "foo", the linker doesn't eat that format.Daniel Dunbar2010-03-201-2/+2
| | | | | | <rdar://problem/7641151> clang must eat spaces after -l llvm-svn: 99023
* Set -ccc-host-triple in these tests.Daniel Dunbar2010-01-271-6/+6
| | | | llvm-svn: 94661
* Driver/Darwin: Fix a few link arguments when targetting different iPhoneOSDaniel Dunbar2010-01-271-0/+33
| | | | | | versions to match gcc (which is matching linker changes). llvm-svn: 94640
* Update tests to use %clang instead of 'clang', and forcibly disable use of 'Daniel Dunbar2009-12-151-10/+10
| | | | | | | clang ' or ' clang -cc1 ' or ' clang-cc ' in test lines (by substituting them to garbage). llvm-svn: 91460
* Remove RUN: true lines.Daniel Dunbar2009-11-081-1/+0
| | | | llvm-svn: 86432
OpenPOWER on IntegriCloud