public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/14816] New: -fno-crossjumping not working for large code?
@ 2004-04-02  0:25 mj_ at gazeta dot pl
  2004-04-02  0:36 ` [Bug c/14816] " pinskia at gcc dot gnu dot org
  0 siblings, 1 reply; 2+ messages in thread
From: mj_ at gazeta dot pl @ 2004-04-02  0:25 UTC (permalink / raw)
  To: gcc-bugs

I'm not sure if it really belongs here, but I hope it won't hurt..

I am working on kind-of interpreter, which consists of series of indirect branches:

label1:
    ...
    goto *ip;
    ...
labelN:
    ...
    goto *ip;

After optimization it is translated to more-or-less assembly equivalent of:

label0:
    goto *ip;
label1:
    ...
    goto label0;
    ...
labelN:
    ...
    goto label0;

That layout is hurting branch prediction, so I tried to disable it with
-fno-crossjumping, which I believe is responsible for this optimization.

For small code [tens of cases] it worked, but for larger one [hundreds] the
compiler still performed that optimization.

For comparison I ran GCC 3.3 with:
--param max-crossjump-edges=400 -fno-crossjumping
and it worked as expected.
[with default values it didn't link indirect branches in the larger case anyway]

-- 
           Summary: -fno-crossjumping not working for large code?
           Product: gcc
           Version: 3.4.0
            Status: UNCONFIRMED
          Severity: minor
          Priority: P2
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: mj_ at gazeta dot pl
                CC: gcc-bugs at gcc dot gnu dot org


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


^ permalink raw reply	[flat|nested] 2+ messages in thread

* [Bug c/14816] -fno-crossjumping not working for large code?
  2004-04-02  0:25 [Bug c/14816] New: -fno-crossjumping not working for large code? mj_ at gazeta dot pl
@ 2004-04-02  0:36 ` pinskia at gcc dot gnu dot org
  0 siblings, 0 replies; 2+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-04-02  0:36 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-04-02 00:36 -------
Not a bug, see PR8092.

*** This bug has been marked as a duplicate of 8092 ***

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |DUPLICATE


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


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2004-04-02  0:36 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-04-02  0:25 [Bug c/14816] New: -fno-crossjumping not working for large code? mj_ at gazeta dot pl
2004-04-02  0:36 ` [Bug c/14816] " pinskia at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).