View mode: basic / threaded / horizontal-split · Log in · Help
October 04, 2004
GDC release 1g
Alive again...

http://home.earthlink.net/~dvdfrdmn/d/gdc-1g.tar.bz2

  * Fixes
    o Various debugging information problems
    o Report more errors and warning with correct line numbers
    o Registers are now put on the stack for garbage collection
    o Signed/unsigned expression semantics should match DMD now

  * Improvements
    o Update to DMD 0.102
    o Templates are handled better on targets without template support

This release didn't have as many improvements as I would liked, but I 
should be able to devote more time now.

Here is my current roadmap for GDC.  Let me know if you think something 
is missing or deserves higher priority.

. Cleanup / resolve outstanding back-end issues
. Replace boehm-gc with simple library
. 64-bit support
. Try again to get GDC to work with the Apple compiler
. DMD calling conventions for x86; don't use trampolines with delegates.
. Inline assembler

David
October 04, 2004
Re: GDC release 1g
Awesome!  I'm compiling it now, so I haven't had a chance to try it, but
I'm excited. I'd appriciate it if you made the inline assembler a higher
priority.  Mango won't build without it. (Although I haven't tried)

Just out of curiousity, have you had any contact with the gcc guys about
this?  Just wondering if they're interested in including this with gcc
once D hits 1.0.  That'd be a BIG thing for D- plus it'd make everything a
lot easier for me on my own system.

John

On Sun, 03 Oct 2004 21:14:29 -0400, David Friedman wrote:

> Alive again...
> 
> http://home.earthlink.net/~dvdfrdmn/d/gdc-1g.tar.bz2
> 
>    * Fixes
>      o Various debugging information problems
>      o Report more errors and warning with correct line numbers
>      o Registers are now put on the stack for garbage collection
>      o Signed/unsigned expression semantics should match DMD now
> 
>    * Improvements
>      o Update to DMD 0.102
>      o Templates are handled better on targets without template support
> 
> This release didn't have as many improvements as I would liked, but I 
> should be able to devote more time now.
> 
> Here is my current roadmap for GDC.  Let me know if you think something 
> is missing or deserves higher priority.
> 
> . Cleanup / resolve outstanding back-end issues
> . Replace boehm-gc with simple library
> . 64-bit support
> . Try again to get GDC to work with the Apple compiler
> . DMD calling conventions for x86; don't use trampolines with delegates.
> . Inline assembler
> 
> David
October 04, 2004
Re: GDC release 1g
It looks like Mango doesn't need inline asm, it just tests for it the 
wrong way.  It should use "version(D_InlineAsm)"  OTOH, I should turn 
off version(DigitalMars) in GDC.

I haven't talked to them yet, but I agree it would be good to get them 
on board.

David

teqDruid wrote:
> Awesome!  I'm compiling it now, so I haven't had a chance to try it, but
> I'm excited. I'd appriciate it if you made the inline assembler a higher
> priority.  Mango won't build without it. (Although I haven't tried)
> 
> Just out of curiousity, have you had any contact with the gcc guys about
> this?  Just wondering if they're interested in including this with gcc
> once D hits 1.0.  That'd be a BIG thing for D- plus it'd make everything a
> lot easier for me on my own system.
> 
> John
> 
> On Sun, 03 Oct 2004 21:14:29 -0400, David Friedman wrote:
> 
> 
>>Alive again...
>>
>>http://home.earthlink.net/~dvdfrdmn/d/gdc-1g.tar.bz2
>>
>>   * Fixes
>>     o Various debugging information problems
>>     o Report more errors and warning with correct line numbers
>>     o Registers are now put on the stack for garbage collection
>>     o Signed/unsigned expression semantics should match DMD now
>>
>>   * Improvements
>>     o Update to DMD 0.102
>>     o Templates are handled better on targets without template support
>>
>>This release didn't have as many improvements as I would liked, but I 
>>should be able to devote more time now.
>>
>>Here is my current roadmap for GDC.  Let me know if you think something 
>>is missing or deserves higher priority.
>>
>>. Cleanup / resolve outstanding back-end issues
>>. Replace boehm-gc with simple library
>>. 64-bit support
>>. Try again to get GDC to work with the Apple compiler
>>. DMD calling conventions for x86; don't use trampolines with delegates.
>>. Inline assembler
>>
>>David
> 
>
October 05, 2004
Re: GDC release 1g
On Sun, 03 Oct 2004 21:14:29 -0400
David Friedman <d3rdclsmail@earthlink.net> wrote:

> Alive again...

nice :)

there is an bug in the gen_unix program. gen_unix.c line 377 something with 
the macro is wrong but i am to tired to check it now: 

INT_FIELD(fi[1],l_linger);

0x080497a5 <c_socket+416>:      push   0x1
0x080497a7 <c_socket+418>:      mov    DWORD PTR [ebp-20],eax
0x080497aa <c_socket+421>:      mov    DWORD PTR [ebp-12],0x4
0x080497b1 <c_socket+428>:      mov    DWORD PTR [ebp-8],0x4
0x080497b8 <c_socket+435>:      push   0x4
0x080497ba <c_socket+437>:      mov    DWORD PTR [ebp-4],0x804a232
0x080497c1 <c_socket+444>:      mov    DWORD PTR [ebp+4],0x1
0x080497c8 <c_socket+451>:      call   0x8048454 <int_type_name>

and the return address is 1 - sig11...
my config: linux gcc-3.4.2 glibc-2.3.3

Sebastian
October 05, 2004
Re: GDC release 1g
Too bad I can't write those programs in D. The bug would have been 
caught before I released it ^^;

Fix:

375c375
<       FieldInfo fi[1];
---
>       FieldInfo fi[2];

Sebastian Czech wrote:
> On Sun, 03 Oct 2004 21:14:29 -0400
> David Friedman <d3rdclsmail@earthlink.net> wrote:
> 
> 
>>Alive again...
> 
>  
> nice :)
> 
> there is an bug in the gen_unix program. gen_unix.c line 377 something with 
> the macro is wrong but i am to tired to check it now: 
> 
> INT_FIELD(fi[1],l_linger);
> 
> 0x080497a5 <c_socket+416>:      push   0x1
> 0x080497a7 <c_socket+418>:      mov    DWORD PTR [ebp-20],eax
> 0x080497aa <c_socket+421>:      mov    DWORD PTR [ebp-12],0x4
> 0x080497b1 <c_socket+428>:      mov    DWORD PTR [ebp-8],0x4
> 0x080497b8 <c_socket+435>:      push   0x4
> 0x080497ba <c_socket+437>:      mov    DWORD PTR [ebp-4],0x804a232
> 0x080497c1 <c_socket+444>:      mov    DWORD PTR [ebp+4],0x1
> 0x080497c8 <c_socket+451>:      call   0x8048454 <int_type_name>
> 
> and the return address is 1 - sig11...
> my config: linux gcc-3.4.2 glibc-2.3.3
> 
> Sebastian
October 05, 2004
Re: GDC release 1g
hello

i compiled an libphobos.so today (linux x86 glibc 2.3.3) and there are 2 
problems...

1. phobos uses execvpe() an non posix version that is unresolved even in the 
  static libphobos 
  http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D/9271

2. phobos/config/config-mid line 55 and line 68
  
  "int __isfinitel(real);"
  "int isfinite(real x) { return __isfinitel(x); }"
  
  __isfinitel is unresolved - isfinitel is not in C99 nor IEEE Std 1003.1 .
  C99 has isfinite for float and double. 

"The great thing about standards, is that there are so many of them"

Sebastian
October 05, 2004
Re: GDC release 1g
Sebastian Czech wrote:
> hello
> 
> i compiled an libphobos.so today (linux x86 glibc 2.3.3) and there are 2 
> problems...
> 
> 1. phobos uses execvpe() an non posix version that is unresolved even in the 
>    static libphobos 
>    http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D/9271
> 
> 2. phobos/config/config-mid line 55 and line 68
>    
>    "int __isfinitel(real);"
>    "int isfinite(real x) { return __isfinitel(x); }"
>    
>    __isfinitel is unresolved - isfinitel is not in C99 nor IEEE Std 1003.1 .
>    C99 has isfinite for float and double. 
> 
> "The great thing about standards, is that there are so many of them"
> 
> Sebastian

Thanks, Sebastian.  I'll add configure tests for these.

If you comment out the undefined functions, std.math.isfinite will still 
work because it doesn't actually depend on the C library routine.

David
October 06, 2004
Re: GDC release 1g
The day GDC becomes full fledged and D becomes 1.0 will be a great day.
My friend once told me that he would start using D once a 'gdc' became 
available, and I feel a lot of others out there feel the same way.

Thanks David for all your hard work! This is going to be a huge step to 
get D accepted into the mainstream!

I have a question... If gdc did become part of the gcc project would 
that mean all linux distro's using gcc would now have gdc?

I have another question. Does gdc compile code fast like dmd, or just as 
fast as gcc? Is it just Walter who wrote a super quick compiler, or is 
the D language in general like that?

Thanks.

teqDruid wrote:
> Awesome!  I'm compiling it now, so I haven't had a chance to try it, but
> I'm excited. I'd appriciate it if you made the inline assembler a higher
> priority.  Mango won't build without it. (Although I haven't tried)
> 
> Just out of curiousity, have you had any contact with the gcc guys about
> this?  Just wondering if they're interested in including this with gcc
> once D hits 1.0.  That'd be a BIG thing for D- plus it'd make everything a
> lot easier for me on my own system.
> 
> John
> 
> On Sun, 03 Oct 2004 21:14:29 -0400, David Friedman wrote:
> 
> 
>>Alive again...
>>
>>http://home.earthlink.net/~dvdfrdmn/d/gdc-1g.tar.bz2
>>
>>   * Fixes
>>     o Various debugging information problems
>>     o Report more errors and warning with correct line numbers
>>     o Registers are now put on the stack for garbage collection
>>     o Signed/unsigned expression semantics should match DMD now
>>
>>   * Improvements
>>     o Update to DMD 0.102
>>     o Templates are handled better on targets without template support
>>
>>This release didn't have as many improvements as I would liked, but I 
>>should be able to devote more time now.
>>
>>Here is my current roadmap for GDC.  Let me know if you think something 
>>is missing or deserves higher priority.
>>
>>. Cleanup / resolve outstanding back-end issues
>>. Replace boehm-gc with simple library
>>. 64-bit support
>>. Try again to get GDC to work with the Apple compiler
>>. DMD calling conventions for x86; don't use trampolines with delegates.
>>. Inline assembler
>>
>>David
> 
>
October 06, 2004
Re: GDC release 1g
On Wed, 06 Oct 2004 17:58:43 -0400, clayasaurus wrote:

> The day GDC becomes full fledged and D becomes 1.0 will be a great day.
> My friend once told me that he would start using D once a 'gdc' became 
> available, and I feel a lot of others out there feel the same way.
> 
> Thanks David for all your hard work! This is going to be a huge step to 
> get D accepted into the mainstream!
> 
> I have a question... If gdc did become part of the gcc project would 
> that mean all linux distro's using gcc would now have gdc?
No.  GCC comes with a lot of compilers, and when you do the configure, you
can choose what compilers get compiled.  Various distros include different
gcc configurations, although this would make it far more likely that it
would be included.  Plus, on a distro like Gentoo, D could be a use flag
so it would get compiled with gcc.


> 
> I have another question. Does gdc compile code fast like dmd, or just as 
> fast as gcc? Is it just Walter who wrote a super quick compiler, or is 
> the D language in general like that?
Dunno.  Yes, and kinda.  I'm unsure as to the speed of gdc (as compared to
dmd) however it uses the same front-end, so unless the gcc back end is
really slow (or David put some calls to sleep() in his glue code) I would
expect the speeds to be comparable.

Yes, Walter is a genius, and DMD is a super-fast compiler.  The D language
is also designed to be easy to lex and parse, so theoretically, it's
faster to parse/lex than other languages.

> 
> Thanks.
> 
> teqDruid wrote:
>> Awesome!  I'm compiling it now, so I haven't had a chance to try it, but
>> I'm excited. I'd appriciate it if you made the inline assembler a higher
>> priority.  Mango won't build without it. (Although I haven't tried)
>> 
>> Just out of curiousity, have you had any contact with the gcc guys about
>> this?  Just wondering if they're interested in including this with gcc
>> once D hits 1.0.  That'd be a BIG thing for D- plus it'd make everything a
>> lot easier for me on my own system.
>> 
>> John
>> 
>> On Sun, 03 Oct 2004 21:14:29 -0400, David Friedman wrote:
>> 
>> 
>>>Alive again...
>>>
>>>http://home.earthlink.net/~dvdfrdmn/d/gdc-1g.tar.bz2
>>>
>>>   * Fixes
>>>     o Various debugging information problems
>>>     o Report more errors and warning with correct line numbers
>>>     o Registers are now put on the stack for garbage collection
>>>     o Signed/unsigned expression semantics should match DMD now
>>>
>>>   * Improvements
>>>     o Update to DMD 0.102
>>>     o Templates are handled better on targets without template support
>>>
>>>This release didn't have as many improvements as I would liked, but I 
>>>should be able to devote more time now.
>>>
>>>Here is my current roadmap for GDC.  Let me know if you think something 
>>>is missing or deserves higher priority.
>>>
>>>. Cleanup / resolve outstanding back-end issues
>>>. Replace boehm-gc with simple library
>>>. 64-bit support
>>>. Try again to get GDC to work with the Apple compiler
>>>. DMD calling conventions for x86; don't use trampolines with delegates.
>>>. Inline assembler
>>>
>>>David
>> 
>>
Top | Discussion index | About this forum | D home