[RFC: AArch64] Parametrically set defaults for function and jump alignment

James Greenhalgh james.greenhalgh@arm.com
Fri Nov 14 10:42:00 GMT 2014


Hi,

We currently do not set any interesting default values for jump and function
alignment in AArch64. I've made the formula for these values derive from
the issue rate of the processor as so:

  jumps: 4 * processor issue-rate (rounded down to nearest power of two)
  functions: 4 * processor issue-rate (rounded up to nearest power of two)

This is sensible for the ARMv8-a implementations I tested on. An
alternative patch would make these values new fields in the tuning
tables.

This happens to work well for some benchmarks and doesn't harm others.
The benefit swings depending on the existing alignment and the knock-on
effects.

Bootstrapped on aarch64-none-linux-gnu with no issues.

Does anyone have any thoughts or preferences as to how we set these
values in future? If not, OK For trunk?

Thanks,
James

---
2014-11-14  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64.c (aarch64_override_options): Set default
	alignments for functions and jumps.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-RFC-AArch64-Parametrically-set-defaults-for-function.patch
Type: text/x-patch
Size: 1326 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20141114/4aadb720/attachment.bin>


More information about the Gcc-patches mailing list