IA-64 big-endian

7 messages Options
Embed this post
Permalink
Dick Porter-3

IA-64 big-endian

Reply Threaded More More options
Print post
Permalink
Hi all

I've been spending the last couple of days getting mono to build on
ia-64/hpux - mostly so far setting up GNU tools from scratch.  I've now
run into a showstopper:

mono/arch/ia64/ia64-codegen.h

#if G_BYTE_ORDER != G_LITTLE_ENDIAN
#error "FIXME"
#endif


So my question is, is fixing this going to be a case of a few fixes here
and there (that I might be able to do without a hardware manual), or is
it going to be a full-blown port?

Thanks,

- Dick


_______________________________________________
Mono-devel-list mailing list
[hidden email]
http://lists.ximian.com/mailman/listinfo/mono-devel-list
Zoltan Varga

Re: IA-64 big-endian

Reply Threaded More More options
Print post
Permalink
Hi,

   It would probably require a lot of modifications but its easier than a full port since most of
the code is there.

                     Zoltan

On Thu, Oct 29, 2009 at 6:22 PM, Dick Porter <[hidden email]> wrote:
Hi all

I've been spending the last couple of days getting mono to build on
ia-64/hpux - mostly so far setting up GNU tools from scratch.  I've now
run into a showstopper:

mono/arch/ia64/ia64-codegen.h

#if G_BYTE_ORDER != G_LITTLE_ENDIAN
#error "FIXME"
#endif


So my question is, is fixing this going to be a case of a few fixes here
and there (that I might be able to do without a hardware manual), or is
it going to be a full-blown port?

Thanks,

- Dick


_______________________________________________
Mono-devel-list mailing list
[hidden email]
http://lists.ximian.com/mailman/listinfo/mono-devel-list


_______________________________________________
Mono-devel-list mailing list
[hidden email]
http://lists.ximian.com/mailman/listinfo/mono-devel-list
pablosantosluac@terra.es

Re: IA-64 big-endian

Reply Threaded More More options
Print post
Permalink
Zoltan,

Would you mind sharing with us your thoughts about the things to change
so we can have an idea of what's involved?

As Dick pointed, would we need a hardware manual?

Thanks,

        pablo

Zoltan Varga wrote:

> Hi,
>
>    It would probably require a lot of modifications but its easier than
> a full port since most of
> the code is there.
>
>                      Zoltan
>
> On Thu, Oct 29, 2009 at 6:22 PM, Dick Porter <[hidden email]
> <mailto:[hidden email]>> wrote:
>
>     Hi all
>
>     I've been spending the last couple of days getting mono to build on
>     ia-64/hpux - mostly so far setting up GNU tools from scratch.  I've now
>     run into a showstopper:
>
>     mono/arch/ia64/ia64-codegen.h
>
>     #if G_BYTE_ORDER != G_LITTLE_ENDIAN
>     #error "FIXME"
>     #endif
>
>
>     So my question is, is fixing this going to be a case of a few fixes here
>     and there (that I might be able to do without a hardware manual), or is
>     it going to be a full-blown port?
>
>     Thanks,
>
>     - Dick
>
>
>     _______________________________________________
>     Mono-devel-list mailing list
>     [hidden email]
>     <mailto:[hidden email]>
>     http://lists.ximian.com/mailman/listinfo/mono-devel-list
>
>
_______________________________________________
Mono-devel-list mailing list
[hidden email]
http://lists.ximian.com/mailman/listinfo/mono-devel-list
Zoltan Varga

Re: IA-64 big-endian

Reply Threaded More More options
Print post
Permalink
Some things:

- the instruction emission macros need to be changed so they emit in big-endian
  mode. that should be pretty easy.
- other than that, I'm not sure what needs to be changed, I would try running the runtime
  test suites to see what works and what doesn't.
- you probably need to read ia64 architecture manual at some point if you run into
  problems.

On Fri, Oct 30, 2009 at 12:03 AM, [hidden email] <[hidden email]> wrote:
Zoltan,

Would you mind sharing with us your thoughts about the things to change
so we can have an idea of what's involved?

As Dick pointed, would we need a hardware manual?

Thanks,

       pablo

Zoltan Varga wrote:
> Hi,
>
>    It would probably require a lot of modifications but its easier than
> a full port since most of
> the code is there.
>
>                      Zoltan
>
> On Thu, Oct 29, 2009 at 6:22 PM, Dick Porter <[hidden email]
> <mailto:[hidden email]>> wrote:
>
>     Hi all
>
>     I've been spending the last couple of days getting mono to build on
>     ia-64/hpux - mostly so far setting up GNU tools from scratch.  I've now
>     run into a showstopper:
>
>     mono/arch/ia64/ia64-codegen.h
>
>     #if G_BYTE_ORDER != G_LITTLE_ENDIAN
>     #error "FIXME"
>     #endif
>
>
>     So my question is, is fixing this going to be a case of a few fixes here
>     and there (that I might be able to do without a hardware manual), or is
>     it going to be a full-blown port?
>
>     Thanks,
>
>     - Dick
>
>
>     _______________________________________________
>     Mono-devel-list mailing list
>     [hidden email]
>     <mailto:[hidden email]>


_______________________________________________
Mono-devel-list mailing list
[hidden email]
http://lists.ximian.com/mailman/listinfo/mono-devel-list
Rayson Ho

Re: IA-64 big-endian

Reply Threaded More More options
Print post
Permalink
In reply to this post by pablosantosluac@terra.es
I did a port of Mono to Loongson, which is MIPS-EL (Little Endian Mode MIPS).

The most important thing is to find out the differences between Big
Endian Mode IA-64 and Little Endian Mode IA-64 -- not just the byte or
word order, but also find out how things are different when function
call parameters are passed via the stack.

BTW, Linux on Itanium runs in little endian mode. HP-UX itself runs in
big endian mode, but can run little endian mode Linux applications
with the Linux Runtime Environment. So may be you guys don't need to
port Mono to big endian mode Itanium!!

Rayson



On Thu, Oct 29, 2009 at 6:03 PM, [hidden email]
<[hidden email]> wrote:

> Zoltan,
>
> Would you mind sharing with us your thoughts about the things to change
> so we can have an idea of what's involved?
>
> As Dick pointed, would we need a hardware manual?
>
> Thanks,
>
>        pablo
>
> Zoltan Varga wrote:
>> Hi,
>>
>>    It would probably require a lot of modifications but its easier than
>> a full port since most of
>> the code is there.
>>
>>                      Zoltan
>>
>> On Thu, Oct 29, 2009 at 6:22 PM, Dick Porter <[hidden email]
>> <mailto:[hidden email]>> wrote:
>>
>>     Hi all
>>
>>     I've been spending the last couple of days getting mono to build on
>>     ia-64/hpux - mostly so far setting up GNU tools from scratch.  I've now
>>     run into a showstopper:
>>
>>     mono/arch/ia64/ia64-codegen.h
>>
>>     #if G_BYTE_ORDER != G_LITTLE_ENDIAN
>>     #error "FIXME"
>>     #endif
>>
>>
>>     So my question is, is fixing this going to be a case of a few fixes here
>>     and there (that I might be able to do without a hardware manual), or is
>>     it going to be a full-blown port?
>>
>>     Thanks,
>>
>>     - Dick
>>
>>
>>     _______________________________________________
>>     Mono-devel-list mailing list
>>     [hidden email]
>>     <mailto:[hidden email]>
>>     http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>
>>
> _______________________________________________
> Mono-devel-list mailing list
> [hidden email]
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>
_______________________________________________
Mono-devel-list mailing list
[hidden email]
http://lists.ximian.com/mailman/listinfo/mono-devel-list
pablosantosluac@terra.es

Re: IA-64 big-endian

Reply Threaded More More options
Print post
Permalink
Hi,

> The most important thing is to find out the differences between Big
> Endian Mode IA-64 and Little Endian Mode IA-64 -- not just the byte or
> word order, but also find out how things are different when function
> call parameters are passed via the stack.
>
> BTW, Linux on Itanium runs in little endian mode. HP-UX itself runs in
> big endian mode, but can run little endian mode Linux applications
> with the Linux Runtime Environment. So may be you guys don't need to
> port Mono to big endian mode Itanium!!


Then maybe the first step would be just trying to run a Mono built on
Mono Itanium on the HP-UX and check whether it just works?

pablo



> Rayson
>
>
>
> On Thu, Oct 29, 2009 at 6:03 PM, [hidden email]
> <[hidden email]> wrote:
>> Zoltan,
>>
>> Would you mind sharing with us your thoughts about the things to change
>> so we can have an idea of what's involved?
>>
>> As Dick pointed, would we need a hardware manual?
>>
>> Thanks,
>>
>>        pablo
>>
>> Zoltan Varga wrote:
>>> Hi,
>>>
>>>    It would probably require a lot of modifications but its easier than
>>> a full port since most of
>>> the code is there.
>>>
>>>                      Zoltan
>>>
>>> On Thu, Oct 29, 2009 at 6:22 PM, Dick Porter <[hidden email]
>>> <mailto:[hidden email]>> wrote:
>>>
>>>     Hi all
>>>
>>>     I've been spending the last couple of days getting mono to build on
>>>     ia-64/hpux - mostly so far setting up GNU tools from scratch.  I've now
>>>     run into a showstopper:
>>>
>>>     mono/arch/ia64/ia64-codegen.h
>>>
>>>     #if G_BYTE_ORDER != G_LITTLE_ENDIAN
>>>     #error "FIXME"
>>>     #endif
>>>
>>>
>>>     So my question is, is fixing this going to be a case of a few fixes here
>>>     and there (that I might be able to do without a hardware manual), or is
>>>     it going to be a full-blown port?
>>>
>>>     Thanks,
>>>
>>>     - Dick
>>>
>>>
>>>     _______________________________________________
>>>     Mono-devel-list mailing list
>>>     [hidden email]
>>>     <mailto:[hidden email]>
>>>     http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>>
>>>
>> _______________________________________________
>> Mono-devel-list mailing list
>> [hidden email]
>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>
>
_______________________________________________
Mono-devel-list mailing list
[hidden email]
http://lists.ximian.com/mailman/listinfo/mono-devel-list
Rayson Ho

Re: IA-64 big-endian

Reply Threaded More More options
Print post
Permalink
Pablo,

How's the IA-64 big-endian port??

I just found the email I sent earlier to the list, but I think IA64
big-endian port has to deal with other issues than the ones I fixed
for the loongson (MIPS EL) port:

http://www.mail-archive.com/mono-devel-list@.../msg21459.html

Rayson




On Fri, Oct 30, 2009 at 4:01 AM, [hidden email]
<[hidden email]> wrote:

> Hi,
>
>> The most important thing is to find out the differences between Big
>> Endian Mode IA-64 and Little Endian Mode IA-64 -- not just the byte or
>> word order, but also find out how things are different when function
>> call parameters are passed via the stack.
>>
>> BTW, Linux on Itanium runs in little endian mode. HP-UX itself runs in
>> big endian mode, but can run little endian mode Linux applications
>> with the Linux Runtime Environment. So may be you guys don't need to
>> port Mono to big endian mode Itanium!!
>
>
> Then maybe the first step would be just trying to run a Mono built on
> Mono Itanium on the HP-UX and check whether it just works?
>
> pablo
>
>
>
>> Rayson
>>
>>
>>
>> On Thu, Oct 29, 2009 at 6:03 PM, [hidden email]
>> <[hidden email]> wrote:
>>> Zoltan,
>>>
>>> Would you mind sharing with us your thoughts about the things to change
>>> so we can have an idea of what's involved?
>>>
>>> As Dick pointed, would we need a hardware manual?
>>>
>>> Thanks,
>>>
>>>        pablo
>>>
>>> Zoltan Varga wrote:
>>>> Hi,
>>>>
>>>>    It would probably require a lot of modifications but its easier than
>>>> a full port since most of
>>>> the code is there.
>>>>
>>>>                      Zoltan
>>>>
>>>> On Thu, Oct 29, 2009 at 6:22 PM, Dick Porter <[hidden email]
>>>> <mailto:[hidden email]>> wrote:
>>>>
>>>>     Hi all
>>>>
>>>>     I've been spending the last couple of days getting mono to build on
>>>>     ia-64/hpux - mostly so far setting up GNU tools from scratch.  I've now
>>>>     run into a showstopper:
>>>>
>>>>     mono/arch/ia64/ia64-codegen.h
>>>>
>>>>     #if G_BYTE_ORDER != G_LITTLE_ENDIAN
>>>>     #error "FIXME"
>>>>     #endif
>>>>
>>>>
>>>>     So my question is, is fixing this going to be a case of a few fixes here
>>>>     and there (that I might be able to do without a hardware manual), or is
>>>>     it going to be a full-blown port?
>>>>
>>>>     Thanks,
>>>>
>>>>     - Dick
>>>>
>>>>
>>>>     _______________________________________________
>>>>     Mono-devel-list mailing list
>>>>     [hidden email]
>>>>     <mailto:[hidden email]>
>>>>     http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>>>
>>>>
>>> _______________________________________________
>>> Mono-devel-list mailing list
>>> [hidden email]
>>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>>
>>
>
_______________________________________________
Mono-devel-list mailing list
[hidden email]
http://lists.ximian.com/mailman/listinfo/mono-devel-list