Path: utzoo!telly!ddsw1!lll-winken!uunet!tut.cis.ohio-state.edu!ATHENA.MIT.EDU!raeburn
From: raeburn@ATHENA.MIT.EDU (Ken Raeburn)
Newsgroups: gnu.gcc.bug
Subject: Re: const_double:DI rtx's
Message-ID: <8811272148.AA05061@SNORKELWACKER.MIT.EDU>
Date: 27 Nov 88 21:48:28 GMT
Sender: daemon@tut.cis.ohio-state.edu
Distribution: gnu
Organization: GNUs Not Usenet
Lines: 13


From what I have gathered, const_double applies to any value wider
than a normal const_int.  This means floating values (well, maybe if
you consider SFmode to be a DFmode that gets trimmed later?) and wide
integers.  DImode stands for double-integer.

Although you can use "long long" to get the compiler to use these
values, the support is incomplete.  In particular, most machines will
probably require gnulib support that is not yet present (but wouldn't
be tough to write) for most operations, and the code that handles
comparisons doesn't work right (breaks down when "unsigned long long"
comes into consideration).  I've sent RMS some rough code to fix the
latter, but it may or may not get into a released version of the
compiler.