This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/18374] [meta-bug] Argument and returnvalue marshalling at tree level
- From: Paul Schlie <schlie at comcast dot net>
- To: <gcc-bugs at gcc dot gnu dot org>
- Date: Wed, 17 Nov 2004 12:43:34 -0500
- Subject: [Bug tree-optimization/18374] [meta-bug] Argument and returnvalue marshalling at tree level
> Additional Comments From pinskia at gcc dot gnu dot org 2004-11-17
> Here is a bug which says the oposite should be done (as arguments are
> already > done): PR 15484.
Unless I misunderstand; C's promotion/evaluation semantics need not
be literally applied, but must only yield equivalent results to as if
they were.
Thereby providing opportunities to the compiler to avoid the otherwise
needless promotion of expression/argument precision if it's known that
their use in an alternate form will not affect a resulting utilized
variable or control flow state.
Thereby enabling the compiler to avoid the promotion of arguments to
functions, and correspondingly only require their promotion within
functions if required.
If an ABI specifies that this may not be done, then that's that; but
if it's allowed, or not specified, the compiler should be enabled to
perform this type of global optimization, I would think. (although
GCC may not presently takes full advantage of this potential today.)