Compiling xterm-202 on i686-pc-linux-gnu shows that 4.1 generates bigger code
than 4.0. 
This happens for all combinations of {-march=i386 and -march=i686} and 
{-O2 and -Os}. 

 size -f 4.*/xterm
  text    data     bss     dec     hex filename
 175215   21724    6684  203623   31b67 4.0-O2-i386/xterm
 181835   14052    6684  202571   3174b 4.1-O2-i386/xterm
 189064   21728    6684  217476   35184 4.0-O2-i686/xterm
 195680   14056    6684  216420   34d64 4.1-O2-i686/xterm
 148727   21724    6684  177135   2b3ef 4.0-Os-i386/xterm
 156443   14052    6684  177179   2b41b 4.1-Os-i386/xterm
 149011   21724    6684  177419   2b50b 4.0-Os-i686/xterm
 156779   14052    6684  177515   2b56b 4.1-Os-i686/xterm

The same is true for the individual object files, not only for the final 
binary. 
The preprocessed sources can be obtained from PR22574

If someone wants to investigate the cause, maybe it would be a good idea to look
at one of the small files like xstrings.i (500 bytes text size).

-- 
           Summary: code size regression from 4.0 on x86
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: rtl-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: dann at godzilla dot ics dot uci dot edu
                CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23153

Reply via email to