This is the mail archive of the
mailing list for the GCC project.
Re: question about speculative scheduling in gcc
- From: Maxim Kuvyrkov <maxim at codesourcery dot com>
- To: "Amker.Cheng" <amker dot cheng at gmail dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Sun, 20 Sep 2009 11:43:40 +0400
- Subject: Re: question about speculative scheduling in gcc
- References: <email@example.com>
I'm puzzled when looking into speculative scheduling in gcc, the 4.2.4 version.
First, I noticed the document describing IBM haifa instruction
scheduler(as PowerPC Reference Compiler Optimization Project).
It presents that the instruction motion from bb s(dominated by t)
to t is speculative when split_blocks(s, t) not empty.
Second, There is SCED_FLAGS like DO_SPECULATION in codes.
These are two different types of speculative optimizations.
Here goes questions.
1, Does the DO_SPECULATION flag constrol whether do the
mentioned speculative motion or not?
DO_SPECULATION flag controls generation of IA64 data and control
speculative instructions. It is not used on other architectures.
Speculative instruction moves from the split blocks are controlled by