From mboxrd@z Thu Jan 1 00:00:00 1970 From: fche@redhat.com (Frank Ch. Eigler) To: johan.rydberg@netinsight.se (Johan Rydberg) Cc: cgen@sources.redhat.com Subject: Re: 64-bit port using CGEN Date: Wed, 16 May 2001 07:50:00 -0000 Message-id: References: <12258.989982603@cygnus.com> <3B01F306.4152A19C.cygnus.local.cgen@netinsight.se> X-SW-Source: 2001-q2/msg00065.html johan.rydberg wrote: : [...] : First of all, opcode values are truncated to zero: : : static const CGEN_IFMT ifmt_j = { : 64, 64, 0xe000000000000000, { { F (F_OPC) }, { F (F_ABS61) }, { 0 } } : }; : pxs-opc.c:55: warning: large integer implicitly truncated to unsigned type Yup, known problem. I suspect a good solution is to define CGEN_INSN_INT to be "long long" for such extra-wide targets. (That will in turn require that pervasive assumptions that CGEN_INSN_INT is 32 bits wide be corrected.) : [...] : Second, : The genereated insert and extract code aborts when word length is larger than : 32 bit. From /opcodes/cgen-ibld.in: [...] Our very own Stan Cox has submitted a patch that aims to work around this problem using a different approach than the "long long" idea above: http://sources.redhat.com/ml/cgen/2001-q2/msg00003.html - FChE