This is the mail archive of the gcc-bugs@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]

[Bug c++/17972] [3.4 Regression] const/pure functions result in bad asm


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-12-07 08:01 -------
> I checked again with a current x86 gcc, 3.4.4 20041206, and the problem is
> still there.  Note that this only happens with cc1plus.

Sorry, you're right, I was able to reproduce on i586-redhat-linux-gnu and
i586-mandrake-linux-gnu but I needed -mtune=i686.

> As to why we get the "impossible" assembly, what happens is that the inline
> function cti gets expanded twice, but the first return label is used for both
> expansions:
> 
>  cti body
>  jump ret_label
> ret_label
>  cti body
>  jump ret_label

Thanks for the analysis.  I'm going to investigate.


-- 


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


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