With 2014r3 shipped, it’s a good time to give a quick update about where we’re at with 64 bit support. I’ll walk through the key pieces involved in this effort and give some updates.
There has been a lot of work pushing the compiler forward over the years. Along with the release of 2014r3, we have now shipped a complete LLVM-based compiler backend that is used for iOS. This new compiler backend is a key milestone on our journey to 64 bit.
A significant part of what makes Xojo what it is comes from our frameworks. We mask a lot of complexity across all of the targets, and our collective frameworks are very large pieces of code. These code bases have a long 15+ year history and assumptions have been made about the size of pointers, integers, and so forth that are no longer true in a 64 bit world. To get to 64 bit, the entire framework is being audited and, in some cases, being rewritten to use newer APIs under the hood.
Where are we now?
We’ve recently crossed some important milestones internally that I’m happy to share with you now:
- The compiler is now capable of generating 64 bit code
- We have built a 64 bit version of the iOS framework
- We have built a 64 bit version of the Linux Web/Console framework, and it is now going through its internal code audit and fixes for 64 bit
Building iOS 64 bit apps is a feature of 2015r1, which will be in end-user testing shortly after the new year. It will be available to all iOS customers (at least in Beta) by February 1st (Xojo iOS support for 64-bit was released in 2015r1). Linux Web/Console will be next, with the remainder of our supported platforms being added regularly thereafter. They will all be delivered in 2015.