All of lore.kernel.org
 help / color / mirror / Atom feed
From: Segher Boessenkool <segher@kernel.crashing.org>
To: Nicholas Piggin <npiggin@gmail.com>
Cc: linux-kbuild@vger.kernel.org,
	Masahiro Yamada <yamada.masahiro@socionext.com>,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v2 1/5] powerpc/kbuild: set default generic machine type for 32-bit compile
Date: Thu, 10 May 2018 09:29:48 -0500	[thread overview]
Message-ID: <20180510142947.GO17342@gate.crashing.org> (raw)
In-Reply-To: <20180510232440.7374071f@roar.ozlabs.ibm.com>

On Thu, May 10, 2018 at 11:24:40PM +1000, Nicholas Piggin wrote:
> On Thu, 10 May 2018 08:10:03 -0500
> Segher Boessenkool <segher@kernel.crashing.org> wrote:
> > On Thu, May 10, 2018 at 03:16:55PM +1000, Nicholas Piggin wrote:
> > > The 64-bit toolchain uses the wrong ISA variant for compiling 32-bit
> > > kernels, eve with -m32. Set -mcpu=powerpc which is the generic 32-bit
> > > powerpc machine type and scheduling model. 32-bit platforms and CPUs
> > > can override this with -mcpu= options that come later on the command
> > > line.
> > > 
> > > This fixes a lot of build failures due to incompatible assembly when
> > > compiling 32-bit kernel with 64-bit toolchain.  
> > 
> > So what ISA is set for gas without this patch?  With what GCC version?
> 
> I'm not sure, how do I find that out?

gcc --version
gcc -v <rest of command>, look at the command line options passed to as
make something.s, look at what .machine is set (if any).


> > And, why is that wrong?
> 
> Some 32-bit platforms and CPU types do not provide -mcpu, so I assume
> for 32-bit toolchains that must result in the "powerpc" machine. With

It results in whatever is the default for that toolchain.  Depends on
many things.

> 64-bit toolchains 
> 
> arch/powerpc/mm/hash_low_32.S:353: Error: missing operand
> 
> Which is,
> 
>         tlbie   r4
> 
> Is that v2.06?

The original ISA did not have the L field, 2.xx does, for any xx even I think.


Segher

  reply	other threads:[~2018-05-10 14:29 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-10  5:16 [PATCH v2 0/5] kbuild and powerpc patches for new Kconfig language Nicholas Piggin
2018-05-10  5:16 ` [PATCH v2 1/5] powerpc/kbuild: set default generic machine type for 32-bit compile Nicholas Piggin
2018-05-10 13:10   ` Segher Boessenkool
2018-05-10 13:24     ` Nicholas Piggin
2018-05-10 14:29       ` Segher Boessenkool [this message]
2018-05-10 14:52   ` Segher Boessenkool
2018-05-10  5:16 ` [PATCH v2 2/5] powerpc/kbuild: remove CROSS32 defines from top level powerpc Makefile Nicholas Piggin
2018-05-10  5:16 ` [PATCH v2 3/5] kbuild: call cc-option with the current set of KBUILD_CFLAGS Nicholas Piggin
2018-05-10  5:29   ` Masahiro Yamada
2018-05-10  6:09     ` Nicholas Piggin
2018-05-10  5:16 ` [PATCH v2 4/5] powerpc/kbuild: Use flags variables rather than overriding LD/CC/AS Nicholas Piggin
2018-05-10 13:03   ` Michael Ellerman
2018-05-10 13:03     ` Michael Ellerman
2018-05-10 13:11     ` Nicholas Piggin
2018-05-10  5:16 ` [PATCH v2 5/5] powerpc/kbuild: move -mprofile-kernel check to Kconfig Nicholas Piggin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180510142947.GO17342@gate.crashing.org \
    --to=segher@kernel.crashing.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=npiggin@gmail.com \
    --cc=yamada.masahiro@socionext.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.