theraven
cec2be9431
Fix double-free when making C++ objects __block
14 years ago
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.
14 years ago
thebeing
3df479e899
More robust compiler check.
14 years ago
thebeing
629b3bac4f
Redo last change to the Makefiles in a portable fashion.
14 years ago
theraven
c0123c5be3
Revert commit that broke the build system.
14 years ago
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.
14 years ago
thebeing
3c30464c45
Make native code generated from LLVM bitcode relocatable.
14 years ago
theraven
66ee284bc7
Fix bug in unified exception model.
14 years ago
theraven
292600c46b
Make symlinks relative when installing.
...
Patch by Richard Stonehouse!
14 years ago
theraven
434e963ea4
Set soname for libraries.
...
Patch by Richard Stonehouse!
14 years ago
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.
14 years ago
theraven
c3e4ea144d
Fix the stripping on install.
14 years ago
theraven
0f7cc4716a
Fix a memory management issue with blocks.
...
Patch by Jens Alfke!
14 years ago
buzzdee
5aec1ee728
Allow to build the optimizations for llvm with cmake.
...
OK loong time ago from David.
14 years ago
qmathe
6d8cc4159a
Added a custom unistd.h to work around glibc vs Clang conflict on __block (hack taken from LanguageKit/CodeGen in Etoile)
14 years ago
thebeing
8cf9b6058b
Attempt to fix objcAllocateClassPair() for root classes.
...
@David: Could you check whether I got this right?
14 years ago
thebeing
e8645c8ceb
Small QNX compatibility tweak.
14 years ago
theraven
0b5d980886
Remove some debugging code.
14 years ago
theraven
f880c79d77
1.6 release announcement.
14 years ago
theraven
1e30d5aea7
And a couple more tweaks.
14 years ago
theraven
167ac3f425
Small tweak to the wording of the release announcement.
14 years ago
theraven
e22fb1164b
Update the release announcement and enable -O3 in preparation for the release.
14 years ago
theraven
3c8407c41d
Fix incorrect malloc size.
14 years ago
theraven
02fe58d85a
Fix use-after-free in speculative inlining pass.
14 years ago
theraven
8372a2f6a0
Add test for objc_msgSend_stret() with small object.
14 years ago
theraven
469ce7521c
Add missing file.
14 years ago
theraven
f2caea7f28
It turns out that allocating one word on stack every loop iteration doesn't scale very well.
...
It also turns out that if you test the cache every loop iteration but never write to it that this doesn't really make things any faster...
14 years ago
theraven
d99a8b19ed
Remove debugging statements.
14 years ago
theraven
286892936d
Teach the optimisations to work in the presence of exception handling and if the front end emits objc_msgSend() instead of indirect lookups.
...
The GNUstep-base test suite now passes when compiled with:
-fno-objc-legacy-dispatch -Xclang -load -Xclang /path/to/libGNUObjCRuntime.so -O3
14 years ago
theraven
aece370989
Fix objc_msgSend_stret() when the receiver is a small object.
14 years ago
theraven
705135bb89
Some fixes to the Objective-C optimisation passes. Tested by compiling GNUstep base with clang at -O3 + all of the optimisations that this library enables at O3 and then running the test suite - results, looking good. Still to do before the release: turn objc_msgSend() into objc_msg_lookup_sender() and insert caching when not optimising for size.
14 years ago
theraven
6be416ca32
Some cleanups to ARC autorelease pools.
14 years ago
theraven
1118c3dfb1
ARM cleanup.
14 years ago
theraven
741add2eb1
Fix typo in class header.
14 years ago
theraven
210e150ffb
Updated the release announcement.
14 years ago
theraven
6cea966cad
Remove some accidentally-committed debug stuff.
14 years ago
theraven
d90a1232f1
Add missing function.
14 years ago
theraven
9490b1b84e
Implement ARM EH support, fix objc_msgSend() to work on ARM.
14 years ago
rfm
2a3a93ec38
Modified to use old style Makefile if GNUstep-make is not available (will not
...
get used on systems where GNU make is not availble).
14 years ago
qmathe
f0d835c6ac
Improved the Makefile to support stripping the installed libraries for debugging.
...
You can now do 'sudo -E make strip=yes install' exactly as you would with
gnustep-make.
14 years ago
theraven
9fae0d1f48
Silence a warning on SPARC64.
14 years ago
theraven
63b07b43aa
Remove duplicate build system for the second time...
14 years ago
theraven
8f4041698b
Some CFI stuff.
14 years ago
rfm
11d324ae91
add stuff to build after recent changes
14 years ago
rfm
cf79e758c8
Restored lost makefile.
14 years ago
theraven
855f2601c9
Fix some corner cases where exceptions are thrown through +initialize.
14 years ago
theraven
3259504d4c
Fix for last commit.
14 years ago
theraven
949469677e
Fpret stuff (not very tested).
14 years ago
theraven
27452f82f0
Some bug fixes.
14 years ago
theraven
224de356cb
Save %xmm when it can be used for args, put the args in the right order.
14 years ago