[kaffe] Re: CVS kaffe (dalibor): Small fix for m68k build problems

Dalibor Topic robilad@kaffe.org
Wed Dec 10 17:23:02 2003


This is a multi-part message in MIME format.
--------------060500070506050305090604
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Dalibor Topic wrote:
> Ciao Riccardo,
> 
> Riccardo wrote:
> 
>> In <3FD5C95E.4050504@kaffe.org> Dalibor Topic  wrote:
>>
>>> Riccardo, could you CVS update and try building again?
>>>
>>> cheers,
>>> dalibor topic
>>
>>
>>
>>
>> I did that. Building still fails and fails very early, But I think it 
>> is due to another bug. The error is long and Ipsoted it on my page as 
>> always
> 
> 
> Thanks! Could you apply the attached patch & run make again?

I talked with Riccardo on IRC, and the patch fixed that particular 
problem, so we are back at the d0 linking issue. In the meantime I 
spotted two warnings in the build log for m68k. One is that two floating 
registers are declared in sysdepCallMethod on non linux systems, but 
aren't used. So I've attached a patch to remove them. It would be nice 
if Riccardo could give it a try, to see if they fix the warnings.

I've also seen another, weirder warning in the build logs:

source='../../../kaffe/kaffe/kaffevm/verify.c' object='verify.lo' 
libtool=yes \
depfile='.deps/verify.Plo' tmpdepfile='.deps/verify.TPlo' \
depmode=gcc /bin/sh ../../../kaffe/depcomp \
/bin/sh ../../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. 
-I../../../kaffe/kaffe/kaffevm -I../../config -I../../include/kaffe 
-I../../../kaffe/kaffe/kaffevm/systems/unix-jthreads 
-I../../kaffe/kaffevm/jit3 -I../../../kaffe/kaffe/kaffevm/jit3 
-I../../../kaffe/libltdl -DTRANSLATOR -DJIT3 
-I../../../kaffe/kaffe/jvmpi -I../../../kaffe/kaffe/xprof 
-I../../include -DKVER='"1.1.x-cvs"' 
-I/home/multix/kaffe-cvs/netbsd-68k/../kaffe/kaffe/kaffevm 
-I/home/multix/kaffe-cvs/netbsd-68k/../kaffe/kaffe/kaffevm/jit3 
-I/home/multix/kaffe-cvs/netbsd-68k/../kaffe/kaffe/kaffevm/systems/unix-jthreads 
-I../../../kaffe/config -I../../../kaffe/include  -DKAFFE_VMDEBUG  -g 
-O2 -Wall -Wstrict-prototypes -fno-omit-frame-pointer -c -o verify.lo 
`test -f '../../../kaffe/kaffe/kaffevm/verify.c' || echo 
'../../../kaffe/kaffe/kaffevm/'`../../../kaffe/kaffe/kaffevm/verify.c
  gcc -DHAVE_CONFIG_H -I. -I../../../kaffe/kaffe/kaffevm -I../../config 
-I../../include/kaffe 
-I../../../kaffe/kaffe/kaffevm/systems/unix-jthreads 
-I../../kaffe/kaffevm/jit3 -I../../../kaffe/kaffe/kaffevm/jit3 
-I../../../kaffe/libltdl -DTRANSLATOR -DJIT3 
-I../../../kaffe/kaffe/jvmpi -I../../../kaffe/kaffe/xprof 
-I../../include -DKVER=\"1.1.x-cvs\" 
-I/home/multix/kaffe-cvs/netbsd-68k/../kaffe/kaffe/kaffevm 
-I/home/multix/kaffe-cvs/netbsd-68k/../kaffe/kaffe/kaffevm/jit3 
-I/home/multix/kaffe-cvs/netbsd-68k/../kaffe/kaffe/kaffevm/systems/unix-jthreads 
-I../../../kaffe/config -I../../../kaffe/include -DKAFFE_VMDEBUG -g -O2 
-Wall -Wstrict-prototypes -fno-omit-frame-pointer -c 
../../../kaffe/kaffe/kaffevm/verify.c -Wp,-MD,.deps/verify.TPlo  -fPIC 
-DPIC -o .libs/verify.o
In file included from ../../config/../../kaffe/config/m68k/netbsd1/md.h:17,
                  from ../../config/md.h:1,
                  from ../../../kaffe/kaffe/kaffevm/classMethod.h:18,
                  from ../../../kaffe/kaffe/kaffevm/verify.c:23:
../../../kaffe/config/m68k/common.h: In function `sysdepCallMethod':
../../../kaffe/config/m68k/common.h:147: warning: unused variable `f0f'
../../../kaffe/config/m68k/common.h:146: warning: unused variable `f0d'
/var/tmp/cc1K9SFM.s: Assembler messages:
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2397-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L1198-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2477-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2400-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2381-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2478-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2372-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2375-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2361-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2341-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2350-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2331-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2470-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2459-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2449-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2437-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2427-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2416-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2406-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2271-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2310-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2327-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2317-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2278-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2290-.L2480+0 didn't fit
/var/tmp/cc1K9SFM.s:27533: Warning: .word .L2302-.L2480+0 didn't fit

This seems to  come from extensively long switch statements in verify.c. 
I was told by gcc hackers that factoring out of some of the long code in 
case statments into their own functions might help. So that's on the 
m68k task list as well.

cheers,
dalibor topic

--------------060500070506050305090604
Content-Type: text/plain;
 name="m68k.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="m68k.diff"

Index: common.h
===================================================================
RCS file: /cvs/kaffe/kaffe/config/m68k/common.h,v
retrieving revision 1.12
diff -u -r1.12 common.h
--- common.h	11 Dec 2003 01:00:07 -0000	1.12
+++ common.h	11 Dec 2003 01:20:13 -0000
@@ -143,8 +143,6 @@
 	int extraargs[(call)->nrargs];
 	register int d0 asm ("d0");
 	register int d1 asm ("d1");
-	register double f0d asm ("fp0");
-	register float f0f asm ("fp0");
 	int *res;
 	int *args = extraargs;
 	int argidx;

--------------060500070506050305090604--