android_kernel_xiaomi_sm8350/include/asm-arm
Stelian Pop 0803c30c23 [ARM] 4264/1: ldrex/strex syntax errors with recent compilers
Trying to build some code using atomic_clear_mask() on a ARM v6
processor with a recent compiler (tried with gcc version 4.1.1
(CodeSourcery ARM Sourcery G++ 2006q3-26), but
all gcc > 4.1 might be affected) results in the following:

/tmp/ccWKLJV8.s: Assembler messages:
/tmp/ccWKLJV8.s:581: Error: instruction does not accept this addressing
mode -- `ldrex r0,r3'
/tmp/ccWKLJV8.s:583: Error: instruction does not accept this addressing
mode -- `strex r1,r0,r3'

Older gcc (like gcc version 4.0.0 (DENX ELDK 4.1 4.0.0)) have no problem
with this.

The patch below fixes the compile error. I also verified that gcc-4.0.0 generates identical code using both forms.

Signed-off-by: Stelian Pop <stelian@popies.net>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2007-03-15 20:39:16 +00:00
..
arch-aaec2000 [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
arch-at91 [ARM] 4231/1: AT91: Merge and typo fixes. 2007-02-22 14:53:30 +00:00
arch-cl7500 [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
arch-clps711x [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
arch-ebsa110 [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
arch-ebsa285 [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
arch-ep93xx [ARM] Merge remaining IOP code 2007-02-20 10:52:43 +00:00
arch-h720x [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
arch-imx Merge ARM fixes 2007-02-20 19:13:30 +00:00
arch-integrator [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
arch-iop13xx [ARM] 4187/1: iop: unify time implementation across iop32x, iop33x, and iop13xx 2007-02-17 15:05:40 +00:00
arch-iop32x [ARM] 4187/1: iop: unify time implementation across iop32x, iop33x, and iop13xx 2007-02-17 15:05:40 +00:00
arch-iop33x [ARM] 4187/1: iop: unify time implementation across iop32x, iop33x, and iop13xx 2007-02-17 15:05:40 +00:00
arch-ixp4xx [ARM] 4263/1: fix IXP4XX_NPE[ABC]_BASE_VIRT address 2007-03-12 16:49:38 +00:00
arch-ixp23xx Merge ARM fixes 2007-02-20 19:13:30 +00:00
arch-ixp2000 [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
arch-l7200 [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
arch-lh7a40x [ARM] 4248/1: lh7a40x: fix missing definitions for get_irqnr_preamble 2007-03-08 13:33:57 +00:00
arch-netx [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
arch-ns9xxx [ARM] 4234/1: Introduce get_irqnr_preamble and arch_ret_to_user for ns9xxx. 2007-02-25 16:41:43 +00:00
arch-omap ARM: OMAP: Add missing get_irqnr_preamble and arch_ret_to_user for omap2 2007-03-02 01:47:13 -08:00
arch-pnx4008 [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
arch-pxa [PATCH] GPIO API: PXA wrapper cleanup 2007-02-20 17:10:16 -08:00
arch-realview [ARM] Merge remaining IOP code 2007-02-20 10:52:43 +00:00
arch-rpc [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
arch-s3c2410 [PATCH] GPIO API: S3C2410 wrapper cleanup 2007-02-20 17:10:16 -08:00
arch-sa1100 [PATCH] GPIO API: SA1100 wrapper cleanup 2007-02-20 17:10:16 -08:00
arch-shark [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
arch-versatile [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user 2007-02-17 15:04:29 +00:00
hardware [PATCH] gpio_keys driver shouldn't be ARM-specific 2007-03-05 07:57:51 -08:00
mach [ARM] Remove compatibility layer for ARM irqs 2006-11-30 12:24:47 +00:00
plat-s3c24xx [ARM] 4220/1: S3C24XX: DMA system initialised from sysdev 2007-02-17 15:00:34 +00:00
.gitignore [ARM] 4216/1: add .gitignore entries for ARM specific files 2007-02-17 11:26:41 +00:00
a.out.h
assembler.h
atomic.h [ARM] 4264/1: ldrex/strex syntax errors with recent compilers 2007-03-15 20:39:16 +00:00
auxvec.h
bitops.h
bug.h [ARM] 3983/2: remove unused argument to __bug() 2006-12-07 22:38:09 +00:00
bugs.h
byteorder.h
cache.h
cacheflush.h [ARM] Convert DMA cache handling to take const void * args 2007-02-08 14:49:44 +00:00
checksum.h [ARM] Improve csum_fold, cleanup csum_tcpudp_magic() 2007-02-06 16:46:46 +00:00
cnt32_to_63.h [ARM] 3978/1: macro to provide a 63-bit value from a 32-bit hardware counter 2006-12-07 16:06:45 +00:00
cpu-multi32.h [ARM] Unuse another Linux PTE bit 2006-12-13 14:34:43 +00:00
cpu-single.h [ARM] Unuse another Linux PTE bit 2006-12-13 14:34:43 +00:00
cpu.h
cputime.h
current.h
delay.h
device.h [ARM] Add a reference from struct device to the dma bounce info 2007-02-12 10:28:24 +00:00
div64.h [ARM] 3611/4: optimize do_div() when divisor is constant 2006-12-07 16:06:09 +00:00
dma-mapping.h Merge AT91, EP93xx, General devel, PXA, S3C, V6+ and Xscale trees 2007-02-17 20:09:53 +00:00
dma.h
domain.h [ARM] 4127/1: Flush the prefetch buffer after changing the DACR 2007-02-08 14:49:18 +00:00
dyntick.h
ecard.h
elf.h [ARM] 4054/1: ep93xx: add HWCAP_CRUNCH 2006-12-18 00:14:54 +00:00
emergency-restart.h
errno.h
fcntl.h
fiq.h
flat.h [ARM] 4074/1: Flat loader stack alignment 2006-12-30 17:05:08 +00:00
floppy.h
fpstate.h [ARM] 4111/1: Allow VFP to work with thread migration on SMP 2007-01-25 16:35:29 +00:00
futex.h
glue.h
gpio.h [PATCH] GPIO core 2007-02-12 09:48:34 -08:00
hardirq.h
hardware.h
hw_irq.h [PATCH] misc arm pt_regs fixes 2006-10-08 12:32:36 -07:00
ide.h
io.h [PATCH] kill eth_io_copy_and_sum() 2007-02-09 09:14:07 -08:00
ioctl.h
ioctls.h
ipc.h
ipcbuf.h
irq_regs.h Initial blind fixup for arm for irq changes 2006-10-06 10:59:54 -07:00
irq.h [ARM] 4073/1: Prevent s3c24xx drivers from including asm/arch/hardware.h and asm/arch/irqs.h 2006-12-30 17:05:07 +00:00
irqflags.h
Kbuild
kexec.h [ARM] 4137/1: Add kexec support 2007-02-16 14:37:06 +00:00
kmap_types.h
leds.h
limits.h
linkage.h
local.h
locks.h
mc146818rtc.h
memory.h [ARM] Clean up discontigmem support 2006-11-30 22:52:28 +00:00
mman.h
mmu_context.h
mmu.h
mmzone.h
module.h
msgbuf.h
mtd-xip.h
mutex.h
namei.h
nwflash.h
page-nommu.h
page.h
param.h
parport.h
pci.h
percpu.h
pgalloc.h
pgtable-hwdef.h
pgtable-nommu.h [ARM] Fix nommu build 2006-11-30 13:53:54 +00:00
pgtable.h [ARM] 4158/1: Fix user page protection macros 2007-02-11 17:06:17 +00:00
poll.h
posix_types.h
proc-fns.h
processor.h [ARM] 4016/1: prefetch macro is wrong wrt gcc's "delete-null-pointer-checks" 2006-12-13 18:30:20 +00:00
procinfo.h [ARM] Move HWCAP_* definitions to asm/elf.h 2006-11-30 12:24:46 +00:00
ptrace.h
resource.h
rtc.h
scatterlist.h
sections.h
segment.h
semaphore-helper.h
semaphore.h
sembuf.h
serial.h
setup.h [PATCH] cleanup asm/setup.h userspace visibility 2006-12-07 08:39:46 -08:00
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h
signal.h
sizes.h
smp.h
socket.h
sockios.h
spinlock_types.h
spinlock.h [PATCH] Remove the last reference to rwlock_is_locked() macro. 2007-02-11 10:51:34 -08:00
stat.h
statfs.h
string.h
suspend.h
system.h [ARM] 4241/1: Define mb() as compiler barrier on a uniprocessor system 2007-03-02 11:59:00 +00:00
termbits.h [PATCH] tty: preparatory structures for termios revamp 2006-12-08 08:28:56 -08:00
termios.h [PATCH] consolidate line discipline number definitions 2007-02-11 10:51:26 -08:00
therm.h
thread_info.h [PATCH] PM: Fix SMP races in the freezer 2006-12-13 09:05:49 -08:00
thread_notify.h
timex.h
tlb.h
tlbflush.h [ARM] 4129/1: Add barriers after the TLB operations 2007-02-08 14:49:27 +00:00
topology.h
traps.h
types.h
uaccess.h Storage class should be before const qualifier 2007-02-17 20:11:19 +01:00
ucontext.h
unaligned.h
unistd.h [ARM] 4137/1: Add kexec support 2007-02-16 14:37:06 +00:00
user.h
vfp.h
vfpmacros.h
vga.h
xor.h