On Fri, Jun 28, 2019 at 11:06 AM Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> wrote: > > The assembler files in the kernel are *.S instead of *.s, so they must > be preprocessed. Hence, we always use $(CC) as an assembler driver. > > $(AS) is almost unused in Kbuild. As of writing, there is just one user. > > $ git grep '$(AS)' -- :^Documentation > drivers/net/wan/Makefile: AS68K = $(AS) In Makefile, a variable is also referenced in a curly brace form like ${AS}. In shell scripts, it can be referenced in the form of $AR. I grepped more patterns. $ git grep -e '$(AS)' -e '${AS}' -e '$AS' -e '$(AS:' -e '${AS:' -- :^Documentation drivers/net/wan/Makefile: AS68K = $(AS) I found only user still. > The documentation about *_AFLAGS* sounds like the flags were passed > to $(AS). This is somewhat misleading since we do not invoke $(AS) > directly. > > Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> > --- > > Documentation/kbuild/kbuild.txt | 5 ++--- > Documentation/kbuild/makefiles.txt | 12 ++++++------ > 2 files changed, 8 insertions(+), 9 deletions(-) > > diff --git a/Documentation/kbuild/kbuild.txt b/Documentation/kbuild/kbuild.txt > index 9c230ea71963..7a7e2aa2fab5 100644 > --- a/Documentation/kbuild/kbuild.txt > +++ b/Documentation/kbuild/kbuild.txt > @@ -31,12 +31,11 @@ Additional options to the assembler (for built-in and modules). > > AFLAGS_MODULE > -------------------------------------------------- > -Additional module specific options to use for $(AS). > +Additional module specific options to use for assembler. > > AFLAGS_KERNEL > -------------------------------------------------- > -Additional options for $(AS) when used for assembler > -code for code that is compiled as built-in. > +Additional options when used for assembling code that is compiled as built-in. > > KCFLAGS > -------------------------------------------------- > diff --git a/Documentation/kbuild/makefiles.txt b/Documentation/kbuild/makefiles.txt > index d65ad5746f94..f0b3a30b985d 100644 > --- a/Documentation/kbuild/makefiles.txt > +++ b/Documentation/kbuild/makefiles.txt > @@ -306,7 +306,7 @@ more details, with real examples. > variable $(KBUILD_CFLAGS) and uses it for compilation flags for the > entire tree. > > - asflags-y specifies options for assembling with $(AS). > + asflags-y specifies options for assembling. > > Example: > #arch/sparc/kernel/Makefile > @@ -441,7 +441,7 @@ more details, with real examples. > as-instr checks if the assembler reports a specific instruction > and then outputs either option1 or option2 > C escapes are supported in the test instruction > - Note: as-instr-option uses KBUILD_AFLAGS for $(AS) options > + Note: as-instr-option uses KBUILD_AFLAGS for assembler options > > cc-option > cc-option is used to check if $(CC) supports a given option, and if > @@ -814,7 +814,7 @@ When kbuild executes, the following steps are followed (roughly): > In this example, the binary $(obj)/image is a binary version of > vmlinux. The usage of $(call if_changed,xxx) will be described later. > > - KBUILD_AFLAGS $(AS) assembler flags > + KBUILD_AFLAGS assembler flags > > Default value - see top level Makefile > Append or modify as required per architecture. > @@ -853,15 +853,15 @@ When kbuild executes, the following steps are followed (roughly): > The first example utilises the trick that a config option expands > to 'y' when selected. > > - KBUILD_AFLAGS_KERNEL $(AS) options specific for built-in > + KBUILD_AFLAGS_KERNEL assembler options specific for built-in > > $(KBUILD_AFLAGS_KERNEL) contains extra C compiler flags used to compile > resident kernel code. > > - KBUILD_AFLAGS_MODULE Options for $(AS) when building modules > + KBUILD_AFLAGS_MODULE Options for assembler when building modules > > $(KBUILD_AFLAGS_MODULE) is used to add arch-specific options that > - are used for $(AS). > + are used for assembler. > From commandline AFLAGS_MODULE shall be used (see kbuild.txt). > > KBUILD_CFLAGS_KERNEL $(CC) options specific for built-in > -- > 2.17.1 > -- Best Regards Masahiro Yamada