5 Commits (99761c28773bb41aaf9032f715e4da3eb374d709)

Author SHA1 Message Date
theraven 8f423d0e29 Fix non-fragile ivar short-circuiting (i.e. hard-code the CORRECT ivar addresses, don't make foo and foobar have the same offset). 15 years ago
theraven 5705845e98 Fixed some bugs with the optimisation passes and introduced support for automatically running them (requires LLVM 3 + a patch that is not yet in trunk, but should be soon). 15 years ago
theraven 9d5452b147 Fixed LLVM passes to compile with recent LLVM.
Made class caching pass cache classes in a static variable if the original class is not available.
15 years ago
theraven 1918888ce1 Added LoopIMPCachePass. This pass automatically performs IMP caching on all loops.
Microbenchmark that just sends a message that does nothing 1000000000 times in a loop goes from taking 10.2 seconds to taking 4.7 after running the pass.
16 years ago
theraven 93251416eb Added LLVM optimisation passes for libobjc2. 16 years ago