This is the mail archive of the gcc-patches@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: [3.4-BIB] Add i386 trunc/nearbyint patterns II


On Tue, Nov 26, 2002 at 12:35:27AM +0100, Jan Hubicka wrote:
> Another problem is that I need different values of control word around.
> Currently I have default and round_toward_zero (the round_down in patch
> is confused).  I think only way I can handle more values is to declare
> each saved copy an separate entity for pre-reload mode switching pass
> and use fixed pseudo to hold value of the default control word so the
> initialization code for other entities don't have to initialize it.

If you have N+1 modes for switching, and 

  0:	read fpcw into mem slot A
  1:	construct round to zero at mem slot B
  2:	construct round to -inf at mem slot C
  ...

then the bits that emit code for (1) can assume that (0) has been
done, and so does not have to re-read the fpcw.  I don't see much
advantage to a fixed pseudo since we've got to have the default
fpcw value in memory anyhow.


r~


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