Commit graph

13 commits

Author SHA1 Message Date
Martin Kinkelin
4a23399236 Aim for consistent #includes (order + dir prefix)
I surely missed a few.
2018-10-20 16:19:46 +02:00
Martin
95915a8ab8 Fix and refactor Objective-C state
Tie the state to an LLVM module/object file instead of having a global
one. And finalize it once per LLVM module instead of once per D module
(previously, as part of ModuleInfo generation).

Fixes issue #2388.
2017-10-26 20:28:53 +02:00
Martin
4515474bc5 Fix Objective-C initialization regression 2017-09-27 21:37:18 +02:00
Martin
1fb269f940 Drop support for LLVM < 3.7 2017-07-16 02:18:00 +02:00
Martin
23cfa37617 Streamline Objective-C initialization 2016-08-28 23:12:21 +02:00
Dan Olson
462b089492 Move Objective-C runtime choice to TargetABI 2016-03-23 23:54:49 -07:00
Dan Olson
7e6bef97b7 Call correct Objective-C runtime functions
Call correct objc_msgSend runtime function based on arch.
Do code cleanups too.
2016-03-23 23:46:52 -07:00
Dan Olson
8ee456e224 Objective-C support based on target triple
Currently supports major Darwin triples except for PPC.  New
global.params.hasObjectiveC is set based on decision.
2016-03-07 23:59:21 -08:00
Dan Olson
52584b2738 Support x86 Objective-C fragile ABI 2016-03-03 00:45:26 -08:00
Dan Olson
be88e39460 Use module flags for image info
Experiment with letting LLVM generate image info based on module flags.
2016-03-02 23:32:42 -08:00
Dan Olson
9ea8bf0f91 Cache selectors and prevent optimizer elimination
Remember selector vars to avoid duplicates, and use llvm.compiler.used
array to prevent optimizer from eliminating selector vars.
2016-03-02 00:30:58 -08:00
Dan Olson
032f2c9342 Add LINKobj and fix compile error on some systems 2016-03-02 00:30:58 -08:00
Dan Olson
98a608e925 First proof -of-concept for objc support
This at least shows a path forward.  Pretty much a kludge to at this
point, but passes the tests.
2016-03-02 00:30:58 -08:00