linux_dsm_epyc7002/arch/sh/include/asm
Paul Mundt 567bb8fd47 sh: Fix up R0 dependence in __arch_swab16/32.
There is nothing in these routines that inherently depends on R0 use.
Given that these routines are inlined, it is rather easy to blow up the
compiler by exhausting the spill class when performing a 64-bit swab.

This presently manifests itself as the following:

CC      fs/ocfs2/suballoc.o
fs/ocfs2/suballoc.c: In function 'ocfs2_reserve_suballoc_bits':
fs/ocfs2/suballoc.c:638: error: unrecognizable insn:
(insn 2793 1230 1231 103 arch/sh/include/asm/swab.h:33 (set (reg:HI 853)
        (subreg:HI (reg:SI 149 macl) 2)) -1 (expr_list:REG_DEAD (reg:SI 149 macl)
        (nil)))
fs/ocfs2/suballoc.c:638: internal compiler error: in extract_insn, at recog.c:1991

This patch switches over to using an arbitrarily assigned register instead.

While the same issue does not exist in the SH-5 case, there is likewise no harm
in having an alternate register used for the byterev/shari pair.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-10 14:25:39 +09:00
..
.gitignore sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
adc.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
addrspace.h sh: Support fixed 32-bit PMB mappings from bootloader. 2009-03-10 15:49:54 +09:00
atomic-grb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
atomic-irq.h sh: Use the atomic_t "counter" member 2009-01-29 11:57:10 +09:00
atomic-llsc.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
atomic.h atomic_t: unify all arch definitions 2009-01-06 15:59:10 -08:00
auxvec.h sh: Make sure AT_SYSINFO_EHDR is exposed to userspace in asm/auxvec.h. 2008-07-29 23:12:25 +09:00
bitops-grb.h sh: Convert to generic bitops for IRQ-toggling implementation. 2008-12-22 18:42:53 +09:00
bitops-llsc.h sh: Relax inline assembly constraints 2009-01-29 11:57:09 +09:00
bitops-op32.h sh: Provide optimized non-atomic bitops for SH-2A. 2008-12-22 18:42:54 +09:00
bitops.h sh: Provide optimized non-atomic bitops for SH-2A. 2008-12-22 18:42:54 +09:00
bug.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
bugs.h sh: Add support for SH7201 CPU subtype. 2008-12-22 18:43:50 +09:00
byteorder.h byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
cache.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
cacheflush.h sh: Handle shm_align_mask also for HAVE_ARCH_UNMAPPED_AREA_TOPDOWN. 2009-05-07 16:38:16 +09:00
checksum_32.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
checksum_64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
checksum.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
clock.h sh: clock framework update, fix count and kill off kref 2009-05-08 17:46:22 +09:00
cmpxchg-grb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
cmpxchg-irq.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
cmpxchg-llsc.h sh: Relax inline assembly constraints 2009-01-29 11:57:09 +09:00
cpu-features.h sh: Support for extended ASIDs on PTEAEX-capable SH-X3 cores. 2009-03-17 17:49:49 +09:00
cputime.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
current.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
delay.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
device.h sh: Add plat_early_device_setup() 2009-04-19 13:06:25 +09:00
div64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
dma-mapping.h sh: Add support for DMA API debugging. 2009-04-09 10:36:54 -07:00
dma-sh.h sh: Revert CONFIG_NR_ONCHIP_DMA_CHANNELS to MAX_DMA_CHANNELS 2009-03-16 19:43:08 +09:00
dma.h sh: dma-sh updates for multi IRQ and new SH-4A CPUs. 2009-03-10 17:26:49 +09:00
dmabrg.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
elf.h Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 2008-12-28 12:33:21 -08:00
emergency-restart.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
entry-macros.S sh: prefetch early exception data on sh4/sh4a. 2009-02-27 16:41:17 +09:00
errno.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
fb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
fcntl.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
fixmap.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
flat.h sh: Provide a FLAT_PLAT_INIT() definition. 2008-08-11 20:17:55 +09:00
fpu.h sh: Add FPU registers to regset interface. 2008-09-21 19:04:55 +09:00
freq.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ftrace.h sh: Provide a dyn_arch_ftrace struct definition. 2008-12-22 18:43:50 +09:00
futex-irq.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
futex.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
gpio.h sh: use gpiolib 2009-01-27 14:49:10 +09:00
hardirq.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
hd64461.h sh: fix the HD64461 level-triggered interrupts handling 2009-03-20 18:57:48 +09:00
heartbeat.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
hugetlb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
hw_irq.h sh: Move the shared INTC code out to drivers/sh/ 2008-10-01 16:13:54 +09:00
i2c-sh7760.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ilsel.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
io_generic.h sh: More I/O routine overhauling. 2008-10-04 05:25:52 +09:00
io_trapped.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
io.h sh: Provide __read_{read,write}sl() definitions for sh64. 2009-05-09 14:44:30 +09:00
ioctl.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ioctls.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ipcbuf.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
irq_regs.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
irq.h sh: fixup many sparse errors. 2008-09-08 10:35:04 +09:00
irqflags_32.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
irqflags_64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
irqflags.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
Kbuild byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
kdebug.h sh: Wire up oops reporting in the die notifier chain. 2008-10-21 18:33:36 +09:00
kexec.h kexec jump: rename KEXEC_CONTROL_CODE_SIZE to KEXEC_CONTROL_PAGE_SIZE 2008-08-15 08:35:42 -07:00
kgdb.h sh: Generic kgdb stub support. 2008-12-22 18:44:04 +09:00
kmap_types.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
kprobes.h sh: Rename opcode_t to insn_size_t. 2009-05-09 16:02:08 +09:00
linkage.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
local.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
machvec.h sh: mach-edosk7705: Fix up edosk7705 so it all builds again. 2008-12-22 18:44:45 +09:00
mc146818rtc.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
mman.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
mmu_context_32.h sh: Support for extended ASIDs on PTEAEX-capable SH-X3 cores. 2009-03-17 17:49:49 +09:00
mmu_context_64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
mmu_context.h sh: Support for extended ASIDs on PTEAEX-capable SH-X3 cores. 2009-03-17 17:49:49 +09:00
mmu.h sh: Sanitize asm/mmu.h for assembly use. 2009-03-31 07:42:37 +09:00
mmzone.h sh: Fix up NUMA build error with se7722_defconfig. 2008-09-12 22:41:30 +09:00
module.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
msgbuf.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
mutex-llsc.h sh: Fix up T-bit error handling in SH-4A mutex fastpath. 2009-01-29 11:56:03 +09:00
mutex.h sh: Add SH-4A optimized fastpath mutex implementation. 2008-12-22 18:42:55 +09:00
page.h sh: Support fixed 32-bit PMB mappings from bootloader. 2009-03-10 15:49:54 +09:00
param.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
parport.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
pci.h sh: pci: Fix up the build for CONFIG_PCI=n. 2009-04-24 15:39:39 +09:00
percpu.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
pgalloc.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
pgtable_32.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
pgtable_64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
pgtable.h sh: Handle shm_align_mask also for HAVE_ARCH_UNMAPPED_AREA_TOPDOWN. 2009-05-07 16:38:16 +09:00
poll.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
posix_types_32.h asm-sh/posix_types_{32,64}.h: drop __GLIBC__/__USE_ALL usage 2009-01-21 17:41:21 +09:00
posix_types_64.h asm-sh/posix_types_{32,64}.h: drop __GLIBC__/__USE_ALL usage 2009-01-21 17:41:21 +09:00
posix_types.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
processor_32.h sh: Fix up DSP context save/restore. 2009-04-04 11:48:11 -04:00
processor_64.h SH: fix start_thread and user_stack_pointer macros 2009-01-29 15:41:15 +09:00
processor.h sh: Add support for SH7724 (SH-Mobile R2R) CPU subtype. 2009-04-16 14:40:56 +09:00
ptrace.h sh: Add in some ptrace definitions from GDB. 2009-05-09 00:06:03 +09:00
push-switch.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
resource.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
rtc.h sh: rtc-generic support. 2009-04-27 17:34:39 +09:00
rwsem.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
scatterlist.h sh: Add support for DMA API debugging. 2009-04-09 10:36:54 -07:00
seccomp.h sh: seccomp support. 2008-08-02 04:39:32 +09:00
sections.h sh: hibernation support 2009-03-10 12:55:40 +09:00
segment.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sembuf.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
serial.h sh: Kill off long-dead HD64465 cchip support. 2008-10-28 20:07:44 +09:00
setup.h sh: Fix up headers_check regression. 2008-09-17 23:24:59 +09:00
sfp-machine.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sh7760fb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sh_bios.h sh: Kill off sh_bios_in_gdb_mode(). 2008-12-22 18:44:44 +09:00
sh_eth.h [netdrvr] sh_eth: Add SH7619 support 2008-08-07 02:20:57 -04:00
sh_keysc.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
shmbuf.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
shmparam.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sigcontext.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
siginfo.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
signal.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sizes.h sh: Add a few more definitions to asm/sizes.h. 2008-09-21 10:31:57 +09:00
smc37c93x.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
smp.h cpumask: convert struct clock_event_device to cpumask pointers. 2008-12-13 21:20:26 +10:30
socket.h net: new user space API for time stamping of incoming and outgoing packets 2009-02-15 22:43:33 -08:00
sockios.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sparsemem.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
spi.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
spinlock_types.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
spinlock.h Allow rwlocks to re-enable interrupts 2009-04-02 19:05:11 -07:00
stat.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
statfs.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
string_32.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
string_64.h sh: Add SH-5 optimized memcpy()/memset()/strcpy()/strlen(). 2008-12-22 18:44:05 +09:00
string.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
suspend.h sh: SuperH Mobile suspend support 2009-03-16 19:52:53 +09:00
swab.h sh: Fix up R0 dependence in __arch_swab16/32. 2009-05-10 14:25:39 +09:00
syscall_32.h sh: Fix up spurious syscall restarting. 2009-01-29 11:56:03 +09:00
syscall_64.h sh: Fix up spurious syscall restarting. 2009-01-29 11:56:03 +09:00
syscall.h sh: Provide the asm/syscall.h interface, needed by tracehook. 2008-09-12 22:13:13 +09:00
syscalls_32.h [CVE-2009-0029] Remove __attribute__((weak)) from sys_pipe/sys_pipe2 2009-01-14 14:15:15 +01:00
syscalls_64.h sh: fixup many sparse errors. 2008-09-08 10:35:04 +09:00
syscalls.h sh: fixup many sparse errors. 2008-09-08 10:35:04 +09:00
system_32.h sh: Rename opcode_t to insn_size_t. 2009-05-09 16:02:08 +09:00
system_64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
system.h sh: Wire up ARCH_HAS_DEFAULT_IDLE for cpuidle. 2009-04-02 13:08:31 +09:00
termbits.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
termios.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
thread_info.h sh: Support kernel stacks smaller than a page. 2008-09-20 20:21:33 +09:00
timer.h sh: Kill off dead handle_timer_tick() code. 2009-05-08 16:44:00 +09:00
timex.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
tlb_64.h sh: Fix up broken kerneldoc comments. 2008-08-04 12:51:06 +09:00
tlb.h sh: Flush only the needed range when unmapping a VMA. 2009-03-17 21:19:49 +09:00
tlbflush.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
topology.h sh: Provide cpumask_of_pcibus() to fix NUMA build. 2009-04-07 17:11:15 -07:00
types.h sh: Rename opcode_t to insn_size_t. 2009-05-09 16:02:08 +09:00
uaccess_32.h sh: Proper __put_user_asm() size mismatch fix. 2008-07-29 09:16:33 +09:00
uaccess_64.h sh: sh_ksyms_64 needs __strncpy_from_user() definition. 2008-09-29 19:45:16 +09:00
uaccess.h sh: Proper __put_user_asm() size mismatch fix. 2008-07-29 09:16:33 +09:00
ubc.h sh: Fix UBC setup and registers for SH2A 2009-05-09 00:09:21 +09:00
ucontext.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
unaligned-sh4a.h sh: Provide optimized unaligned loads on SH-4A. 2008-12-22 18:43:48 +09:00
unaligned.h sh: Provide optimized unaligned loads on SH-4A. 2008-12-22 18:43:48 +09:00
unistd_32.h sh: wire up sys_preadv/sys_pwritev() syscalls. 2009-04-06 09:00:16 -07:00
unistd_64.h sh: wire up sys_preadv/sys_pwritev() syscalls. 2009-04-06 09:00:16 -07:00
unistd.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
user.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
vga.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
watchdog.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
xor.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00