All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/7] MIPS: Add asm macros for unsupported instructions
@ 2017-11-22 11:30 ` James Hogan
  0 siblings, 0 replies; 17+ messages in thread
From: James Hogan @ 2017-11-22 11:30 UTC (permalink / raw)
  To: linux-mips; +Cc: Marcin Nowakowski, James Hogan, Ralf Baechle

From: James Hogan <jhogan@kernel.org>

This patch series implements Ralf's idea[1] for better supporting older
assembler versions which don't implement newer instructions, in inline
assembly. It has a number of benefits which are described in the
individual patches, but its also particularly beneficial for Marcin's
CRC patchset.

So far I've converted the VZ, XPA, and MSA abstractions to use it.
Old style abstractions remain for MT and DSP instructions, which are
left for future patches.

There are also other abstraction macros in <asm/asmmacro.h> for use in
.S files (particularly for MSA), which similarly don't handle $n
register naming and use the $at move trick. Cleaning these up to use
something like parse_r is also left for future patches.

[1] https://www.linux-mips.org/archives/linux-mips/2017-10/msg00043.html

Patch overview:

Patch 1 adds some helpers to streamline the construction of assembler
macros for instructions unimplemented in the current assembler. It is
needed for the other patches.

Patches 2-3 update the VZ helpers to make use of the new assembler macro
helpers, and make the VZ helpers consistent with the normal c0 register
helpers now that it is possible to do so.

Patches 4-6 update the XPA helpers to make use of the new assembler
macro helpers, and to use the instructions provided by the assembler if
they are available. These are also changed to be consistent with the
normal register helpers now that it is possible to do so.

Patch 7 updates the MSA control register helpers to make use of the new
assembler macro helpers.

Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Marcin Nowakowski <marcin.nowakowski@mips.com>
Cc: linux-mips@linux-mips.org

James Hogan (7):
  MIPS: Add helpers for assembler macro instructions
  MIPS: VZ: Update helpers to use new asm macros
  MIPS: VZ: Pass GC0 register names in $n format
  MIPS: XPA: Use XPA instructions in assembly
  MIPS: XPA: Allow use of $0 (zero) to MTHC0
  MIPS: XPA: Standardise readx/writex accessors
  MIPS: MSA: Update helpers to use new asm macros

 arch/mips/Makefile               |   6 +-
 arch/mips/include/asm/mipsregs.h | 663 +++++++++++++++-----------------
 arch/mips/include/asm/msa.h      |  63 +---
 3 files changed, 356 insertions(+), 376 deletions(-)

base-commit: e0c5f36b2a638fc3298200c385af7f196d3b5cd4
-- 
git-series 0.9.1

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2018-05-24 19:48 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-22 11:30 [PATCH 0/7] MIPS: Add asm macros for unsupported instructions James Hogan
2017-11-22 11:30 ` James Hogan
2017-11-22 11:30 ` [PATCH 1/7] MIPS: Add helpers for assembler macro instructions James Hogan
2017-11-22 11:30   ` James Hogan
2018-05-24 19:47   ` Hauke Mehrtens
2017-11-22 11:30 ` [PATCH 2/7] MIPS: VZ: Update helpers to use new asm macros James Hogan
2017-11-22 11:30   ` James Hogan
2017-11-22 11:30 ` [PATCH 3/7] MIPS: VZ: Pass GC0 register names in $n format James Hogan
2017-11-22 11:30   ` James Hogan
2017-11-22 11:30 ` [PATCH 4/7] MIPS: XPA: Use XPA instructions in assembly James Hogan
2017-11-22 11:30   ` James Hogan
2017-11-22 11:30 ` [PATCH 5/7] MIPS: XPA: Allow use of $0 (zero) to MTHC0 James Hogan
2017-11-22 11:30   ` James Hogan
2017-11-22 11:30 ` [PATCH 6/7] MIPS: XPA: Standardise readx/writex accessors James Hogan
2017-11-22 11:30   ` James Hogan
2017-11-22 11:30 ` [PATCH 7/7] MIPS: MSA: Update helpers to use new asm macros James Hogan
2017-11-22 11:30   ` James Hogan

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.