This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: store double-cvtd-to-int to memory


On Fri, Mar 14, 2003 at 10:51:22AM -0800, Dale Johannesen wrote:
> For the case where it goes in a register, however, you do. 
> (It looks like this is not so on Alpha?)

Well, Alpha's a bit different.  We can convert to DImode
without memory, but truncating to SImode needs special 
care.  Without the above pattern, we'd store the DImode
back to the stack, load with an integer register, then
store the truncated value.

So the match is for an SImode store to memory.

But the concept should be the same.

> So removing op3 from the above pattern results in another pattern
> that combine won't generate, because the original
> fix_truncdfsi2 pattern does have the temp, and needs it.

Um, that's wrong.  Part of what combine does is to discard
clobbers and add them back as needed.  Why isn't that happening?


r~


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