Recent changes to GDC.

Iain Buclaw ibuclaw at ubuntu.com
Sun Jan 15 14:34:27 PST 2012


I've done a recent blitz of changes through the GDC codebase, 
some which change the way code is generated in a way which 
affects the current ABI.

* Dropped support for GCC 4.2, 4.3 and 4.4

* Merged in the work Walter has done for __vector type support.  
There are now newly available GCC builtins for vector operations 
via gcc.builtins module.

* GDC's default calling convention has now been switched back to 
that of the default for the target platform. The D_InlineAsm 
family of version identifiers are now turned off by default as we 
no longer pretend to follow DMD's calling convention. For those 
who want to turn on D_InlineAsm(_X86/_x86_64) there is a 
-fd-inline-asm compiler switch.

* GDC will emit the GNU_InlineAsm version identifier to tell user 
code that we support GNU Extended Inline Assembly.

* All patches to GCC proper have now been removed, GDC can now 
build applications without relying on changes to the backend, 
with the exception of naked functions.

* "naked" has now been implemented now as a function attribute of 
the x86 platform.  It is applied to all naked functions, and 
implies noinline and noclone.

* D version 2 is now the default compiler to build.


I will get round to putting up a roadmap to GCC-4.8 sometime this 
week, and I invite everyone interested in making this happen to 
get together and help progress this. :)



Regards
--
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';


More information about the D.gnu mailing list