This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/50677] volatile forces load into register
- From: "pinskia at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 24 Feb 2014 16:17:26 +0000
- Subject: [Bug rtl-optimization/50677] volatile forces load into register
- Auto-submitted: auto-generated
- References: <bug-50677-4 at http dot gcc dot gnu dot org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50677
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to H.J. Lu from comment #4)
> Why doesn't combine include (clobber (reg:CC 17 flags))?
It has nothing to do with the clobber.
Inside combine_instructions there is a call to init_recog_no_volatile which
forces volatile memory not be recognized. The main reason is because combine
does not check for volatile memory issues before doing the combine so it was
easier to just disable recognizability of volatile memory.