convert_move infinite recursion

Alexandre Oliva aoliva@redhat.com
Tue Jul 22 04:16:00 GMT 2003


In a 16-bit port with 32-bit SImode without a truncdisi2 instruction,
truncating a DImode value to SImode results in infinite recursion in
convert_move.

This patch uses a strategy similar to the one used right above to
truncate from multi-word to word-or-narrower, except that the existing
code truncates to word-mode then calls itself recursively (this is not
the infinite recursion call, mind you), whereas the new code uses
to_mode.

Bootstrapped on i686-pc-linux-gnu, tested in this 16-bit port.

Ok to install?

-------------- next part --------------
A non-text attachment was scrubbed...
Name: convert-move-di2si.patch
Type: text/x-patch
Size: 1159 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20030722/bbf32fed/attachment.bin>
-------------- next part --------------

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                 aoliva@{redhat.com, gcc.gnu.org}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist                Professional serial bug killer


More information about the Gcc-patches mailing list