On Sun, 09 Oct 2022 23:07:21 PDT (-0700), richard.guent...@gmail.com wrote:
On Fri, Oct 7, 2022 at 3:50 PM Palmer Dabbelt <pal...@rivosinc.com> wrote:
I found this when reading the documentation for Kito's recent patch.
From the discussion it sounds like this is the desired behavior, so
let's document it.
Maybe also mention that the alignment doesn't apply to functions
optimized for size?
Oops, I guess that was the whole point of the discussion ;). I sent a
v2, which also mentions -Os but not sure we need to do that explicitly.
gcc/doc/ChangeLog
* invoke.texi (-falign-functions): Mention __align__
---
gcc/doc/invoke.texi | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 2a9ea3455f6..8326a60dcf1 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -13136,7 +13136,9 @@ effective only in combination with
@option{-fstrict-aliasing}.
Align the start of functions to the next power-of-two greater than or
equal to @var{n}, skipping up to @var{m}-1 bytes. This ensures that at
least the first @var{m} bytes of the function can be fetched by the CPU
-without crossing an @var{n}-byte alignment boundary.
+without crossing an @var{n}-byte alignment boundary. This does not override
+functions that otherwise specify their own alignment constraints, such as via
+an alignment attribute.
If @var{m} is not specified, it defaults to @var{n}.
--
2.34.1