This is the mail archive of the cgen@sources.redhat.com mailing list for the CGEN project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: 64-bit port using CGEN



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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]