All of lore.kernel.org
 help / color / mirror / Atom feed
From: arnd@arndb.de (Arnd Bergmann)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 4/7] ARM: cache-v7: optimise branches in v7_flush_cache_louis
Date: Thu, 09 Apr 2015 10:13:06 +0200	[thread overview]
Message-ID: <2570741.Vc3c6Ovx3m@wuerfel> (raw)
In-Reply-To: <E1YdzFA-0008Cr-Ku@rmk-PC.arm.linux.org.uk>

On Friday 03 April 2015 11:54:32 Russell King wrote:
> diff --git a/arch/arm/mm/cache-v7.S b/arch/arm/mm/cache-v7.S
> index 5b5d0c00bca7..793d061b4dce 100644
> --- a/arch/arm/mm/cache-v7.S
> +++ b/arch/arm/mm/cache-v7.S
> @@ -93,17 +93,18 @@ ENTRY(v7_flush_dcache_louis)
>  ALT_SMP(mov	r3, r0, lsr #20)		@ move LoUIS into position
>  ALT_UP(	mov	r3, r0, lsr #26)		@ move LoUU into position
>  	ands	r3, r3, #7 << 1 		@ extract LoU*2 field from clidr
> +	bne	start_flush_levels		@ LoU != 0, start flushing
>  #ifdef CONFIG_ARM_ERRATA_643719
> -	ALT_SMP(mrceq	p15, 0, r2, c0, c0, 0)	@ read main ID register
> -	ALT_UP(reteq	lr)			@ LoUU is zero, so nothing to do
> -	movweq	r1, #:lower16:0x410fc090	@ ID of ARM Cortex A9 r0p?
> -	movteq	r1, #:upper16:0x410fc090
> -	biceq	r2, r2, #0x0000000f             @ clear minor revision number
> -	teqeq	r2, r1                          @ test for errata affected core and if so...
> -	moveqs	r3, #1 << 1			@   fix LoUIS value (and set flags state to 'ne')
> +ALT_SMP(mrc	p15, 0, r2, c0, c0, 0)		@ read main ID register
> +ALT_UP(	ret	lr)				@ LoUU is zero, so nothing to do
> +	movw	r1, #:lower16:0x410fc090	@ ID of ARM Cortex A9 r0p?

With this in linux-next, I get a build failure on randconfig kernels with
THUMB2_KERNEL enabled:

arch/arm/mm/cache-v7.S: Assembler messages:
arch/arm/mm/cache-v7.S:99: Error: ALT_UP() content must assemble to exactly 4 bytes

Any idea for a method that will work with all combinations of SMP/UP
and ARM/THUMB? The best I could come up with was to add an extra 'mov r0,r0',
but that gets rather ugly as you then have to do it only for THUMB2.

	Arnd

  reply	other threads:[~2015-04-09  8:13 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-02 22:49 [RFC] mixture of cleanups to cache-v7.S Russell King - ARM Linux
2015-04-02 22:57 ` Russell King - ARM Linux
2015-04-03 10:08   ` Russell King - ARM Linux
2015-04-03 10:53     ` Russell King - ARM Linux
2015-04-03 10:54     ` [PATCH 1/7] ARM: cache-v7: use movw/movt instructions Russell King
2015-04-09 17:10       ` Catalin Marinas
2015-04-03 10:54     ` [PATCH 2/7] ARM: cache-v7: shift CLIDR to extract appropriate field before masking Russell King
2015-04-09 17:09       ` Catalin Marinas
2015-04-03 10:54     ` [PATCH 3/7] ARM: cache-v7: consolidate initialisation of cache level index Russell King
2015-04-09 17:11       ` Catalin Marinas
2015-04-03 10:54     ` [PATCH 4/7] ARM: cache-v7: optimise branches in v7_flush_cache_louis Russell King
2015-04-09  8:13       ` Arnd Bergmann [this message]
2015-04-09  8:21         ` Russell King - ARM Linux
2015-04-09 10:29           ` Arnd Bergmann
2015-04-09 13:46             ` Russell King - ARM Linux
2015-04-09 17:26               ` Catalin Marinas
2015-04-09 17:17           ` Catalin Marinas
2015-04-09 17:15       ` Catalin Marinas
2015-04-03 10:54     ` [PATCH 5/7] ARM: cache-v7: optimise test for Cortex A9 r0pX devices Russell King
2015-04-09 17:20       ` Catalin Marinas
2015-04-03 10:54     ` [PATCH 6/7] ARM: enable ARM errata 643719 workaround by default Russell King
2015-04-09 17:21       ` Catalin Marinas
2015-04-03 10:54     ` [PATCH 7/7] ARM: cache-v7: further cleanups (and fix?) Russell King
2015-04-10 13:27 ` [RFC] mixture of cleanups to cache-v7.S Catalin Marinas
2015-04-10 14:11   ` Lorenzo Pieralisi
2015-04-10 14:26     ` Russell King - ARM Linux
2015-04-10 15:16       ` Catalin Marinas
2015-04-10 15:37       ` Lorenzo Pieralisi

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=2570741.Vc3c6Ovx3m@wuerfel \
    --to=arnd@arndb.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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.