This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Architecture-dependent optimizations
- From: Jan Hubicka <hubicka at ucw dot cz>
- To: aimen bouchhima <aimen dot bouchhima at imag dot fr>
- Cc: gcc at gcc dot gnu dot org
- Date: Thu, 30 Sep 2004 19:27:04 +0200
- Subject: Re: Architecture-dependent optimizations
- References: <200409301909.50733.aimen.bouchhima@imag.fr>
> Hi all,
> I'm trying to compile an application for two different target architectures
> using gcc. My goal is to obtain 2 output binaries that have the same control
> flow graph structure. The problem is that , some architecture-dependent
> optimizations tend to modify the cfg structure by removing/merging basic
> blocks etc. Trying to disable such optimizations (using command line
> options), I found that this was rather a complex task cause they are
> dispersed across different optimization passes, and some times mixed with
> other types of optimizations.
> So my question is : Is there a simple and clean way to disable/enable
> architecture-dependent optimizations that affect the cfg structure in gcc?
No, in fact almost every optimization does affect (for instance CSE
might introduce dead instruction that might in turn result in
ellimination of basic blocks and such).
What do you need this for? Perhaps you can get bit out of current gcov
graph dumping support...
Honza
>
> Thanks in advance for any hint or comment
>
> Aimen