Commit Graph

842 Commits

Author SHA1 Message Date
rfm
25962bc45e Update support for installation in correct location for GNUstep 2012-10-15 09:31:34 +00:00
theraven
7a232c68d6 Fix typo in .cxx_construct.
Reported by Luboš Doležel!
2012-10-09 21:39:33 +00:00
theraven
cdc31c6c0d Fix class_addProperty().
Reported by Luboš Doležel!
2012-10-09 12:35:54 +00:00
theraven
2410ca70e2 Made name() const to avoid missing symbol error with libobjcxx. 2012-10-01 12:24:25 +00:00
theraven
cdd2684f60 Small Makefile tweaks.
Patch by Kubilay Kocak!
2012-09-28 12:54:03 +00:00
theraven
3b5e00b995 Small improvements to class lookup cache pass. 2012-09-20 13:05:13 +00:00
theraven
31149afd20 Add CMake minimum version. 2012-09-19 12:30:54 +00:00
theraven
86d5f028a4 Don't remove ivar offset variables, even if we aren't using them. 2012-09-19 12:30:18 +00:00
theraven
304593924f Add missing unlock.
Patch by Philippe Roussel!
2012-09-15 11:19:21 +00:00
theraven
fe9801837c Archive 1.6.1 release announcement. 2012-09-04 14:58:30 +00:00
thebeing
0622b37c66 Respect user-specified LDFLAGS 2012-09-01 19:36:49 +00:00
thebeing
4fba0fcc88 Evaluate LD to find out which linker to use. 2012-08-24 21:52:25 +00:00
thebeing
1684283af0 Fix bug in protocol_copyMethodDescriptionList() where we were calling calloc()
with a wrong element size.
2012-08-22 21:25:11 +00:00
theraven
e7ab10611f ARC fix for blocks. 2012-08-19 09:17:12 +00:00
theraven
8cf5e0412f Update optimisation to work with LLVM trunk, remove the Makefile and use CMake for building the passes (out of tree builds are now easier). 2012-08-17 13:18:16 +00:00
theraven
2d835cffa6 Fix the lock order when sending +initialize, so that we don't hold a lock that
is meant to protect a runtime data structure while trying to acquire a lock
that must be held when running user code that may take an indeterminate amount
of time and may trigger deadlocks.
2012-08-13 14:58:58 +00:00
theraven
c6eede8179 GCC-compatibility tweak in EH. 2012-07-12 18:10:51 +00:00
theraven
8e023f0063 Fix case where more than 4 weak references to the same object would cause infinite loops.
Patch by Thomas Davie!
2012-06-18 16:01:40 +00:00
theraven
f059be5337 Add better handling of messages returning floating point values sent to nil. 2012-06-09 10:43:57 +00:00
theraven
0eeff38f1b Fix potential null pointer dereference.
Reported by: Riccardo Mottola
2012-05-17 14:49:28 +00:00
theraven
d8192c3a64 Always return 64-bit 0 in response to a message to nil on x86. 2012-05-04 13:28:08 +00:00
theraven
6950cb8e55 A couple of small bug fixes. 2012-04-15 17:46:10 +00:00
theraven
abff244ef9 Started 1.6.1 release announcement, updated LLVM optimisations to work with LLVM 3.1. 2012-04-06 17:46:55 +00:00
theraven
6f1589a841 Some bug fixes to ARC autorelease pools. Now provides all of the support required for implementing GNUstep autorelease pools. 2012-04-06 11:58:14 +00:00
theraven
4f51f9cd05 When using the runtime's internal autorelease pool implementation, just pop the
top object off when attempting to retain an autoreleased return value,
2012-04-05 16:37:48 +00:00
theraven
cec2be9431 Fix double-free when making C++ objects __block 2012-04-03 09:45:26 +00:00
theraven
26784adc0a Fix some warnings.
Remove the dependency on <typeinfo> containing the vtable layout for
std::type_info.  This allows libobjc2 to be built against libc++ and libcxxrt
and still provide working a unified exception model.

Note: This is broken on FreeBSD < 9.1, because it ships a libsupc++ with a
broken ABI.
2012-03-24 16:43:01 +00:00
thebeing
3df479e899 More robust compiler check. 2012-03-22 13:24:43 +00:00
thebeing
629b3bac4f Redo last change to the Makefiles in a portable fashion. 2012-03-22 12:51:39 +00:00
theraven
c0123c5be3 Revert commit that broke the build system. 2012-03-21 16:45:31 +00:00
thebeing
a106ba85af * Update Makefile.clang to the present state (and add deprecation notice).
* Store version info for the makefiles in one place (version.make).
* Update Makefile to build assembly correctly with GCC.
2012-03-21 16:09:40 +00:00
thebeing
3c30464c45 Make native code generated from LLVM bitcode relocatable. 2012-03-21 13:23:02 +00:00
theraven
66ee284bc7 Fix bug in unified exception model. 2012-03-20 16:30:07 +00:00
theraven
292600c46b Make symlinks relative when installing.
Patch by Richard Stonehouse!
2012-03-20 10:29:05 +00:00
theraven
434e963ea4 Set soname for libraries.
Patch by Richard Stonehouse!
2012-03-20 10:28:30 +00:00
thebeing
f845df37c1 Add objc/blocks_private.h header to expose some internals of the blocks runtime
that are accessed by libdispatch. Also rename the relevant structs to be
compatible with the BlocksRuntime from compiler-rt.
2012-03-11 21:45:08 +00:00
theraven
c3e4ea144d Fix the stripping on install. 2012-03-06 11:04:59 +00:00
theraven
0f7cc4716a Fix a memory management issue with blocks.
Patch by Jens Alfke!
2012-03-01 19:33:26 +00:00
buzzdee
5aec1ee728 Allow to build the optimizations for llvm with cmake.
OK loong time ago from David.
2012-02-24 19:10:37 +00:00
qmathe
6d8cc4159a Added a custom unistd.h to work around glibc vs Clang conflict on __block (hack taken from LanguageKit/CodeGen in Etoile) 2012-02-16 13:14:08 +00:00
thebeing
8cf9b6058b Attempt to fix objcAllocateClassPair() for root classes.
@David: Could you check whether I got this right?
2012-02-06 17:15:48 +00:00
thebeing
e8645c8ceb Small QNX compatibility tweak. 2012-02-02 20:09:06 +00:00
theraven
0b5d980886 Remove some debugging code. 2011-11-24 13:03:57 +00:00
theraven
f880c79d77 1.6 release announcement. 2011-11-23 17:25:14 +00:00
theraven
1e30d5aea7 And a couple more tweaks. 2011-11-23 13:14:06 +00:00
theraven
167ac3f425 Small tweak to the wording of the release announcement. 2011-11-23 13:10:58 +00:00
theraven
e22fb1164b Update the release announcement and enable -O3 in preparation for the release. 2011-11-23 12:43:16 +00:00
theraven
3c8407c41d Fix incorrect malloc size. 2011-11-21 23:19:06 +00:00
theraven
02fe58d85a Fix use-after-free in speculative inlining pass. 2011-11-20 21:21:22 +00:00
theraven
8372a2f6a0 Add test for objc_msgSend_stret() with small object. 2011-11-19 12:25:54 +00:00