Re: D support on SPARC/Solaris

2014-10-31 Thread Joakim via Digitalmars-d-learn

On Friday, 31 October 2014 at 16:10:01 UTC, Wyatt wrote:

On Thursday, 30 October 2014 at 15:39:55 UTC, Joakim wrote:
You could look at the linux/powerpc work Kai did with ldc for 
an idea of the changes necessary for a new arch.


Sounds fairly reasonable to me.  Happen to have a link to a 
commit or branch with that or do I need to go digging?


None that I know of, look at the commit log and grep the source 
for powerpc.


Re: D support on SPARC/Solaris

2014-10-31 Thread Wyatt via Digitalmars-d-learn

On Thursday, 30 October 2014 at 15:39:55 UTC, Joakim wrote:


Someone may have been thorough when adding arches to certain 
files, but that in no way implies much actual support.


Looking closer, it's all ELF header stuff, so that sounds about 
right.


You may be able to combine the existing Solaris support and the 
sparc backend of llvm or gcc and get pretty far.  A lot of the 
work should just be translating headers needed for the 
solaris/sparc sections in druntime.  You could look at the 
linux/powerpc work Kai did with ldc for an idea of the changes 
necessary for a new arch.


Sounds fairly reasonable to me.  Happen to have a link to a 
commit or branch with that or do I need to go digging?


As kagamin said, dmd's backend is i386/x86_64 only, so you have 
to use ldc or gdc.


Never really made that connection (because lol PCs), but it makes 
sense when I think about it.  Point was more that I don't care 
even if I have to compile to C and then build _that_.


Thanks for the response.  If it looks like there's a tenable 
path, then comes the hard part: getting my boss on board with 
this. orz


-Wyatt


Re: D support on SPARC/Solaris

2014-10-30 Thread Joakim via Digitalmars-d-learn

On Thursday, 30 October 2014 at 14:03:23 UTC, Wyatt wrote:
At work, I have to target SPARC/Solaris.  I'm writing code to 
interface with an internal network protocol, so my current 
choices are C and (old) C++ (remember Sun Studio?  I wish I 
didn't have to).  Having looked, it seems like there's some 
manner of support for SPARC in the runtime, but restricted to 
Linux and FreeBSD?  Is that correct?
Someone may have been thorough when adding arches to certain 
files, but that in no way implies much actual support.  The gdc 
section of the download page claims sparc support, so you could 
look at what they've done.


In which case, what would an enterprising individual have to 
actually do (read: fix or implement) to use D in that 
environment?  (If it comes down to it, it may be worth my while 
to add it myself.)
You may be able to combine the existing Solaris support and the 
sparc backend of llvm or gcc and get pretty far.  A lot of the 
work should just be translating headers needed for the 
solaris/sparc sections in druntime.  You could look at the 
linux/powerpc work Kai did with ldc for an idea of the changes 
necessary for a new arch.


This echoes a thread Nordlöw started about six months ago, but 
my constraints aren't as rigid: DMD would be fine for me.  I 
just pine for non-crap language.
As kagamin said, dmd's backend is i386/x86_64 only, so you have 
to use ldc or gdc.


Re: D support on SPARC/Solaris

2014-10-30 Thread Kagamin via Digitalmars-d-learn

DMD is for x86 AFAIK.


D support on SPARC/Solaris

2014-10-30 Thread Wyatt via Digitalmars-d-learn
At work, I have to target SPARC/Solaris.  I'm writing code to 
interface with an internal network protocol, so my current 
choices are C and (old) C++ (remember Sun Studio?  I wish I 
didn't have to).  Having looked, it seems like there's some 
manner of support for SPARC in the runtime, but restricted to 
Linux and FreeBSD?  Is that correct?


In which case, what would an enterprising individual have to 
actually do (read: fix or implement) to use D in that 
environment?  (If it comes down to it, it may be worth my while 
to add it myself.)


This echoes a thread Nordlöw started about six months ago, but my 
constraints aren't as rigid: DMD would be fine for me.  I just 
pine for non-crap language.


-Wyatt