BBRO on non-pipelined processors - bad?

tm tm@mail.kloo.net
Fri Oct 18 16:32:00 GMT 2002


I'm looking at BBRO and how it relates to the Hitachi H8/300 series.

Simply speaking, I can't see a reason why it should be enabled for the
H8/300:

1) The H8/300 has a constant-cycle conditional branch, e.g. it takes the
same number of clocks regardless of whether it's taken or not taken, and

2) The H8/300 has no cache, so there aren't any "minimization of cache
line fill" advantages.

Given these two factors, can we disable BBRO for the H8/300 series?
It adds significantly to code size.

I'd like to create a target macro defined something like:

#define CONSTANT_CYCLE_BRANCH 1

...and then we can do in toplev.c:

#ifdef CACHE_LOG
	if (!CONSTANT_CYCLE_BRANCH || CACHE_LOG)) {
		(call bbro here)
	}
#endif

Is this acceptable?

Toshi




More information about the Gcc-bugs mailing list