dotgnu-general
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Dotgnu-general] Porting dotnet to Minix 3


From: Alexander Samilovskih
Subject: Re: [Dotgnu-general] Porting dotnet to Minix 3
Date: Tue, 12 Feb 2013 22:27:39 +0700

sorry, yes I meant dirent. Yes I tried this macro, but it ends up in
another segmentation fault, then i changed allocation a bit -
http://pastebin.com/cqFZtPYd
it helped me to compile valuable amount of code, but stops on this
http://pastebin.com/tfm4ZYZK
with virtual memory exhausted, my workaround bring memory leak in
code? or this is related to minix runtime. If i choose 128 bytes for
var result, then assersion from malloc.c thrown

2013/2/12 Aleksey Demakov <address@hidden>:
> Hi,
>
> Are you referring to struct dirent? I see there is BROKEN_DIRENT macro
> used in the code, can you check if defining it fixes your problem?
>
> Regards,
> Aleksey
>
> On Tue, Feb 12, 2013 at 5:33 PM, Alexander Samilovskih
> <address@hidden> wrote:
>> I think I found porting bug. In function ILReadDir: there is only
>> memory allocation for dentry, but no allocation for dentry->d_name,
>> which is on linux 256 bytes long, but it is not garanteed by POSIX, on
>> minix it is 1 byte long. This was the reason of segfault
>>
>> 2013/2/12 Alexander Samilovskih <address@hidden>:
>>> stack trace of csant, something wrong with walking directories
>>>
>>> +0x7fb98bf
>>> ILReadDir+0x15
>>> CSAntDirNext+0x32
>>> ProcessDirStack+0x9a6
>>> CSAntFileSetLoad+0xc9
>>> CSAntTask_ResGen+0x70
>>> BuildTarget+0x19a
>>> CSAntBuild+0x250
>>> main+0x503
>>> ___start+0xe2
>>> _start+0x17
>>>
>>> 2013/2/10 Alexander Samilovskih <address@hidden>:
>>>> switched compiler to gcc
>>>>
>>>> gmake[2]: Entering directory `/home/new/pnet/engine'
>>>> gcc -DHAVE_CONFIG_H -I. -I../include    -I../libffi/include -fno-gcse
>>>> -fno-inline-functions -fno-unit-at-a-time -I../support -I../libgc/incl
>>>> ude -I../libgc/libatomic_ops/src -I../include  -I../libffi/include -I.
>>>> -DBUILD_PROFILE_NAME="\"full\"" -g -O2 -Wall -c cctormgr.c
>>>> /usr/pkg/bin/bash ./mklabel.sh "awk" ./cvm.h >cvm_labels.h
>>>> gcc -DHAVE_CONFIG_H -I. -I../include    -I../libffi/include -fno-gcse
>>>> -fno-inline-functions -fno-unit-at-a-time -I../support -I../libgc/incl
>>>> ude -I../libgc/libatomic_ops/src -I../include  -I../libffi/include -I.
>>>> -DBUILD_PROFILE_NAME="\"full\"" -g -O2 -Wall -c cvm.c
>>>> In file included from cvm.c:834:
>>>> cvm_call.c: In function '_ILCVMInterpreter':
>>>> cvm_call.c:2127: warning: pointer targets in passing argument 1 of
>>>> 'ILInterlockedIncrement' differ in signedness
>>>> ../support/interlocked_x86.h:53: note: expected 'ILInt32 *' but
>>>> argument is of type 'ILUInt32 *'
>>>> cvm.c:597: warning: optimization may eliminate reads and/or writes to
>>>> register variables
>>>> cvm.c:597: warning: optimization may eliminate reads and/or writes to
>>>> register variables
>>>> cvm.c:597: warning: optimization may eliminate reads and/or writes to
>>>> register variables
>>>> cvm.c:985: error: unable to find a register to spill in class 'SIREG'
>>>> cvm.c:985: error: this is the insn:
>>>> (insn 418 413 419 27 cvm.c:74 (parallel [
>>>>             (set (reg:SI 2 cx [7087])
>>>>                 (const_int 0 [0x0]))
>>>>             (set (reg/f:SI 1 dx [orig:7085 stacktop.275 ] [7085])
>>>>                 (plus:SI (reg/f:SI 6864 [ stacktop.275 ])
>>>>                     (reg:SI 7079)))
>>>>             (set (reg:SI 0 ax [7086])
>>>>                 (plus:SI (reg:SI 0 ax [7083])
>>>>                     (reg:SI 7079)))
>>>>             (set (mem/s:BLK (reg/f:SI 6864 [ stacktop.275 ]) [0 A32])
>>>>                 (mem:BLK (reg:SI 0 ax [7083]) [0 A8]))
>>>>             (use (reg:SI 7079))
>>>>         ]) 637 {*rep_movqi} (expr_list:REG_DEAD (reg:SI 0 ax [7083])
>>>>         (expr_list:REG_DEAD (reg:SI 7079)
>>>>             (expr_list:REG_DEAD (reg/f:SI 6864 [ stacktop.275 ])
>>>>                 (expr_list:REG_UNUSED (reg:SI 2 cx [7087])
>>>>                     (expr_list:REG_UNUSED (reg:SI 0 ax [7086])
>>>>                         (expr_list:REG_UNUSED (reg/f:SI 1 dx
>>>> [orig:7085 stacktop.275 ] [7085])
>>>>                             (nil))))))))
>>>> cvm.c:985: confused by earlier errors, bailing out
>>>> gmake[2]: *** [cvm.o] Error 1



reply via email to

[Prev in Thread] Current Thread [Next in Thread]