android_kernel_xiaomi_sm8350/include/asm-x86
Jeremy Fitzhardinge 1c54d77078 x86: partial unification of asm-x86/bitops.h
This unifies the set/clear/test bit functions of asm/bitops.h.

I have not attempted to merge the bit-finding functions, since they
rely on the machine word size and can't be easily restructured to work
generically without a lot of #ifdefs.  In particular, the 64-bit code
can assume the presence of conditional move instructions, whereas
32-bit needs to be more careful.

The inline assembly for the bit operations has been changed to remove
explicit sizing hints on the instructions, so the assembler will pick
the appropriate instruction forms depending on the architecture and
the context.

Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
Cc: Andi Kleen <ak@suse.de>
Cc: Linus Torvalds <torvalds@linux-foundation.org>

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-01-30 13:30:55 +01:00
..
mach-bigsmp x86: cleanup mpspec variants 2008-01-30 13:30:35 +01:00
mach-default x86: cleanup mpspec variants 2008-01-30 13:30:35 +01:00
mach-es7000 x86: cleanup mpspec variants 2008-01-30 13:30:35 +01:00
mach-generic
mach-numaq x86: cleanup mpspec variants 2008-01-30 13:30:35 +01:00
mach-summit x86: cleanup mpspec variants 2008-01-30 13:30:35 +01:00
mach-visws x86: visws extern inline to static inline 2007-10-17 20:16:39 +02:00
mach-voyager x86: voyager use correct header file name 2007-11-17 16:27:00 +01:00
xen
a.out.h x86: unify a.out{,_32,_64}.h 2007-10-23 22:37:23 +02:00
acpi.h x86: merge acpi_32/64.h 2008-01-30 13:30:36 +01:00
agp.h x86: unify include/asm/agp_32/64.h 2007-10-17 20:17:12 +02:00
alternative-asm.h x86: rename .i assembler includes to .h 2007-10-17 20:16:29 +02:00
alternative.h x86: actually merge <asm/alternative.h> 2008-01-30 13:30:30 +01:00
apic.h x86: extended interrupt LVT support for AMD Barcelona 2008-01-30 13:30:40 +01:00
apicdef.h x86: extended interrupt LVT support for AMD Barcelona 2008-01-30 13:30:40 +01:00
arch_hooks.h x86: move debug related declarations to kdebug.h 2008-01-30 13:30:17 +01:00
asm.h x86: merge resume-trace.h variants 2008-01-30 13:30:38 +01:00
atomic_32.h
atomic_64.h x86: make atomic64_t work like atomic_t 2007-10-17 20:16:21 +02:00
atomic.h
auxvec.h x86: unify include/asm/auxvec_32/64.h 2007-10-17 20:17:13 +02:00
bitops_32.h x86: partial unification of asm-x86/bitops.h 2008-01-30 13:30:55 +01:00
bitops_64.h x86: partial unification of asm-x86/bitops.h 2008-01-30 13:30:55 +01:00
bitops.h x86: partial unification of asm-x86/bitops.h 2008-01-30 13:30:55 +01:00
boot.h
bootparam.h Make asm-x86/bootparam.h includable from userspace. 2007-10-23 15:49:47 +10:00
bug.h x86: nuke a ton of unused exports 2008-01-30 13:30:28 +01:00
bugs.h x86: unify some more trivial include/asm-x86/ 32/64 variants 2007-10-17 20:17:10 +02:00
byteorder.h x86: fix asm-x86/byteorder.h for userspace export 2008-01-01 19:12:15 +01:00
cache.h x86: unify include/asm/cache_32/64.h 2007-10-17 20:17:15 +02:00
cacheflush.h Intel IOMMU: clflush_cache_range now takes size param 2007-10-22 08:13:18 -07:00
calgary.h
calling.h
checksum_32.h
checksum_64.h x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
checksum.h
cmpxchg_32.h x86: fall back on interrupt disable in cmpxchg8b on 80386 and 80486 2008-01-30 13:30:47 +01:00
cmpxchg_64.h
cmpxchg.h
compat.h x86: Use linux/elfcore-compat.h 2007-10-19 20:35:02 +02:00
cpu.h i386: no need to make enable_cpu_hotplug a variable 2007-10-17 20:16:16 +02:00
cpufeature.h x86: cleanup tlbflush.h variants 2008-01-30 13:30:35 +01:00
cputime.h x86: trivial header merges 2007-10-17 20:17:08 +02:00
current_32.h
current_64.h
current.h
debugreg.h x86: unify include/asm/debugreg_32/64.h 2007-10-17 20:35:37 +02:00
delay.h x86: unify include/asm/delay_32/64.h 2007-10-17 20:17:17 +02:00
desc_32.h
desc_64.h x86: get_desc_base 2008-01-30 13:30:44 +01:00
desc_defs.h
desc.h
device.h intel-iommu: fix for IOMMU early crash 2007-10-22 08:13:19 -07:00
div64.h x86: unify div64{,_32,_64}.h 2007-10-23 22:37:23 +02:00
dma-mapping_32.h Change table chaining layout 2007-10-22 21:20:01 +02:00
dma-mapping_64.h x86-64: enable sg chaining 2007-10-16 11:26:02 +02:00
dma-mapping.h
dma.h x86: merge include/asm-x86/dma.h 2008-01-30 13:30:20 +01:00
dmi.h x86: unify include/asm/dmi_32/64.h 2007-10-17 20:17:18 +02:00
dwarf2_32.h
dwarf2_64.h
dwarf2.h
e820_32.h x86: remove extern declarations for code, data, bss resources 2008-01-30 13:30:32 +01:00
e820_64.h x86: remove extern declarations for code, data, bss resources 2008-01-30 13:30:32 +01:00
e820.h Make asm-x86/bootparam.h includable from userspace. 2007-10-23 15:49:47 +10:00
edac.h x86: unify include/asm/cache_32/64.h 2007-10-17 20:17:19 +02:00
elf.h x86 vDSO: consolidate vdso32 2008-01-30 13:30:43 +01:00
emergency-restart.h
errno.h x86: trivial header merges 2007-10-17 20:17:08 +02:00
fb.h x86: unify include/asm/cache_32/64.h 2007-10-17 20:17:21 +02:00
fcntl.h
fixmap_32.h
fixmap_64.h
fixmap.h
floppy.h x86: unify include/asm/floppy_32/64.h 2007-10-17 20:24:56 +02:00
fpu32.h
frame.h x86: rename .i assembler includes to .h 2007-10-17 20:16:29 +02:00
futex.h x86: merge futex_32/64.h 2008-01-30 13:30:20 +01:00
gart.h x86 gart: rename symbols only used for the GART implementation 2007-10-30 00:22:22 +01:00
genapic_32.h
genapic_64.h
genapic.h
geode.h GEODE: use symbolic constant in cs5536 reboot fixup 2007-10-19 20:35:02 +02:00
hardirq_32.h x86: expand /proc/interrupts to include missing vectors, v2 2007-10-17 20:16:53 +02:00
hardirq_64.h
hardirq.h
highmem.h
hpet.h x86: offer is_hpet_enabled() on !CONFIG_HPET_TIMER too 2008-01-30 13:30:02 +01:00
hw_irq_32.h
hw_irq_64.h x86: clear IO_APIC before enabing apic error vector. 2008-01-30 13:30:39 +01:00
hw_irq.h
hypertransport.h
i387_32.h x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
i387_64.h x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
i387.h
i8253.h i386: Remove the useless #ifdef in i8253.h 2007-10-12 23:04:23 +02:00
i8259.h x86: move 8259 defines to i8259.h 2008-01-30 13:30:29 +01:00
ia32_unistd.h x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
ia32.h x86: TLS cleanup 2008-01-30 13:30:46 +01:00
ide.h x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
idle.h x86: remove dead code and exports 2008-01-30 13:30:28 +01:00
intel_arch_perfmon.h x86: unify some more trivial include/asm-x86/ 32/64 variants 2007-10-17 20:17:10 +02:00
io_32.h x86: various changes and cleanups to in_p/out_p delay details 2008-01-30 13:30:05 +01:00
io_64.h x86: various changes and cleanups to in_p/out_p delay details 2008-01-30 13:30:05 +01:00
io_apic.h x86: merge include/asm-x86/sparsemem.h 2008-01-30 13:30:37 +01:00
io.h
ioctl.h
ioctls.h x86: unify include/asm/ioctls_32/64.h 2007-10-17 20:26:11 +02:00
iommu.h x86 gart: rename iommu.h to gart.h 2007-10-30 00:22:22 +01:00
ipcbuf.h x86: unify some more trivial include/asm-x86/ 32/64 variants 2007-10-17 20:17:10 +02:00
ipi.h x86: convert cpu_to_apicid to be a per cpu variable 2007-10-19 20:35:03 +02:00
irq_32.h i386: introduce "used_vectors" bitmap which can be used to reserve vectors. 2007-10-19 20:35:03 +02:00
irq_64.h
irq_regs_32.h
irq_regs_64.h
irq_regs.h
irq.h
irqflags.h x86: irqflags consolidation 2008-01-30 13:30:33 +01:00
ist.h Make asm-x86/bootparam.h includable from userspace. 2007-10-23 15:49:47 +10:00
k8.h x86: move k8 related declarations 2008-01-30 13:30:16 +01:00
Kbuild x86 vDSO: ia32 vsyscall removal 2008-01-30 13:30:44 +01:00
kdebug.h x86: move debug related declarations to kdebug.h 2008-01-30 13:30:17 +01:00
kexec_32.h
kexec_64.h
kexec.h
kmap_types.h x86: unify include/asm/agp_32/64.h 2007-10-17 20:26:13 +02:00
kprobes_32.h x86: jprobe bugfix 2007-12-18 18:05:58 +01:00
kprobes_64.h x86: jprobe bugfix 2007-12-18 18:05:58 +01:00
kprobes.h
ldt.h x86: unify include/asm/ldt_32/64.h 2007-10-17 20:16:47 +02:00
lguest_hcall.h lguest: make async_hcall() static 2007-11-05 21:53:29 +11:00
lguest.h Reorder guest saved regs to match hyperall order 2007-10-23 15:49:51 +10:00
linkage_32.h
linkage_64.h
linkage.h
local_32.h
local_64.h
local.h
mach_apic.h
math_emu.h
mc146818rtc.h x86: isolate the rtc code for sharing 2008-01-30 13:30:26 +01:00
mca_dma.h
mca.h
mce.h x86: move mce related declarations 2008-01-30 13:30:17 +01:00
mman.h x86: unify include/asm/mman_32/64.h 2007-10-17 20:26:15 +02:00
mmsegment.h
mmu_context_32.h
mmu_context_64.h x86: nuke a ton of unused exports 2008-01-30 13:30:28 +01:00
mmu_context.h
mmu.h x86: merge mmu{,_32,_64}.h 2007-10-23 22:37:22 +02:00
mmx.h
mmzone_32.h x86: put all kern_addr_valid() incarnations to pgtable.h 2008-01-30 13:30:37 +01:00
mmzone_64.h x86: 64-bit, make sparsemem vmemmap the only memory model 2008-01-30 13:30:47 +01:00
mmzone.h
module_32.h
module_64.h
module.h
mpspec_def.h x86: cleanup mpspec variants 2008-01-30 13:30:35 +01:00
mpspec.h x86: cleanup smp.h variants 2008-01-30 13:30:36 +01:00
msgbuf.h x86: merge msgbuf_32/64.h 2007-10-23 22:37:24 +02:00
msidef.h
msr-index.h x86: debugctlmsr constants 2008-01-30 13:30:54 +01:00
msr.h x86: asm-x86/msr.h: pull in linux/types.h 2008-01-15 16:44:38 +01:00
mtrr.h x86: mtrr use type bool [RESEND AGAIN] 2008-01-30 13:30:31 +01:00
mutex_32.h
mutex_64.h
mutex.h
namei.h x86: unify some more trivial include/asm-x86/ 32/64 variants 2007-10-17 20:17:10 +02:00
nmi_32.h x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
nmi_64.h x86: nmi_64.c: make code static 2008-01-30 13:30:31 +01:00
nmi.h
numa_32.h
numa_64.h x86: fixup numa 64 namespace 2008-01-30 13:30:38 +01:00
numa.h
numaq.h
page_32.h
page_64.h x86: 64-bit, make sparsemem vmemmap the only memory model 2008-01-30 13:30:47 +01:00
page.h
param.h x86: unify some more trivial include/asm-x86/ 32/64 variants 2007-10-17 20:17:10 +02:00
paravirt.h x86: irqflags consolidation 2008-01-30 13:30:33 +01:00
parport.h x86: unify some more trivial include/asm-x86/ 32/64 variants 2007-10-17 20:17:10 +02:00
pci_32.h PCI: merge almost all of pci_32.h and pci_64.h together 2007-10-12 15:03:20 -07:00
pci_64.h x86: pci-dma_64.c: cleanups 2008-01-30 13:30:31 +01:00
pci-direct.h
pci.h x86: consolidate toloplogy_32/64.h 2008-01-30 13:30:38 +01:00
pda.h x86: move pda related declaration 2008-01-30 13:30:18 +01:00
percpu_32.h
percpu_64.h
percpu.h
pgalloc_32.h
pgalloc_64.h
pgalloc.h
pgtable_32.h x86: put all kern_addr_valid() incarnations to pgtable.h 2008-01-30 13:30:37 +01:00
pgtable_64.h remove asm/bitops.h includes 2007-10-19 11:53:41 -07:00
pgtable-2level-defs.h
pgtable-2level.h
pgtable-3level-defs.h paravirt: refactor struct paravirt_ops into smaller pv_*_ops 2007-10-16 11:51:29 -07:00
pgtable-3level.h
pgtable.h
poll.h
posix_types_32.h
posix_types_64.h
posix_types.h
prctl.h
processor_32.h x86: debugctlmsr context switch 2008-01-30 13:30:54 +01:00
processor_64.h x86: debugctlmsr context switch 2008-01-30 13:30:54 +01:00
processor-cyrix.h
processor-flags.h KVM: Use standard CR8 flags, and fix TPR definition 2007-10-13 10:18:19 +02:00
processor.h
proto.h x86: remove obsolte declarations from proto.h 2008-01-30 13:30:19 +01:00
ptrace-abi.h x86: PTRACE_SINGLEBLOCK 2008-01-30 13:30:55 +01:00
ptrace.h x86: debugctlmsr arch_has_block_step 2008-01-30 13:30:54 +01:00
reboot_fixups.h
reboot.h
required-features.h x86: merge required-features.h 2007-10-23 22:37:24 +02:00
resource.h x86: trivial header merges 2007-10-17 20:17:08 +02:00
resume-trace.h x86: merge resume-trace.h variants 2008-01-30 13:30:38 +01:00
rio.h x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
rtc.h x86: trivial header merges 2007-10-17 20:17:08 +02:00
rwlock.h x86: use immediates instead of RW_LOCK_BIAS_STR 2008-01-30 13:30:34 +01:00
rwsem.h x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
scatterlist.h x86: merge include/asm-x86/scatterlist.h 2008-01-30 13:30:21 +01:00
seccomp_32.h
seccomp_64.h
seccomp.h
sections.h x86: trivial header merges 2007-10-17 20:17:08 +02:00
segment_32.h
segment_64.h x86: segment selector macros 2008-01-30 13:30:48 +01:00
segment.h
semaphore_32.h kill DECLARE_MUTEX_LOCKED 2007-10-17 08:42:47 -07:00
semaphore_64.h kill DECLARE_MUTEX_LOCKED 2007-10-17 08:42:47 -07:00
semaphore.h
sembuf.h x86: unify some more trivial include/asm-x86/ 32/64 variants 2007-10-17 20:17:10 +02:00
serial.h x86: merge some trivially mergeable headers 2007-10-17 20:17:09 +02:00
setup.h x86: clean up setup.h and the boot code 2007-10-23 22:37:25 +02:00
shmbuf.h x86: merge shmbuf_32/64.h 2007-10-23 22:37:24 +02:00
shmparam.h x86: unify some more trivial include/asm-x86/ 32/64 variants 2007-10-17 20:17:10 +02:00
sigcontext32.h
sigcontext.h x86: merge sigcontext_32/64.h 2007-10-23 22:37:24 +02:00
siginfo.h x86: unify include/asm/siginfo_32/64.h 2007-10-17 20:26:17 +02:00
signal.h x86 single_step: TIF_FORCED_TF 2008-01-30 13:30:50 +01:00
smp_32.h x86: cleanup smp.h variants 2008-01-30 13:30:36 +01:00
smp_64.h x86: cleanup smp.h variants 2008-01-30 13:30:36 +01:00
smp.h
socket.h
sockios.h x86: merge some trivially mergeable headers 2007-10-17 20:17:09 +02:00
sparsemem.h x86: merge include/asm-x86/sparsemem.h 2008-01-30 13:30:37 +01:00
spinlock_types.h
spinlock.h x86: merge spinlock.h variants 2008-01-30 13:30:34 +01:00
srat.h
stacktrace.h x86: constify stacktrace_ops 2007-10-17 20:16:11 +02:00
stat.h x86: merge stat_32/64.h 2007-10-23 22:37:24 +02:00
statfs.h x86: merge statfs_32/64.h 2007-10-23 22:37:24 +02:00
string_32.h i386: Remove strrchr assembler implementation 2007-10-17 20:16:23 +02:00
string_64.h
string.h
suspend_32.h
suspend_64.h x86: hibernation: document __save_processor_state() on x86 2008-01-30 13:30:04 +01:00
suspend.h
swiotlb.h
sync_bitops.h
system_32.h x86: move debug related declarations to kdebug.h 2008-01-30 13:30:17 +01:00
system_64.h x86: also define AT_VECTOR_SIZE_ARCH 2007-12-18 18:05:58 +01:00
system.h
tce.h
termbits.h x86: unify some more trivial include/asm-x86/ 32/64 variants 2007-10-17 20:17:10 +02:00
termios.h x86: unify some more trivial include/asm-x86/ 32/64 variants 2007-10-17 20:17:10 +02:00
therm_throt.h
thread_info_32.h x86: debugctlmsr context switch 2008-01-30 13:30:54 +01:00
thread_info_64.h x86: debugctlmsr context switch 2008-01-30 13:30:54 +01:00
thread_info.h
time.h x86: isolate the rtc code for sharing 2008-01-30 13:30:26 +01:00
timer.h x86: scale cyc_2_nsec according to CPU frequency 2008-01-30 13:30:06 +01:00
timex.h x86: unify timex.h variants 2007-10-12 23:04:23 +02:00
tlb.h x86: unify include/asm/tlb_32/64.h 2007-10-17 20:26:18 +02:00
tlbflush.h x86: merge tlbflush.h variants 2008-01-30 13:30:35 +01:00
topology.h x86: merge topology.h variants 2008-01-30 13:30:38 +01:00
tsc.h x86: move tsc related declarations 2008-01-30 13:30:18 +01:00
types.h x86: unify include/asm/types_32/64.h 2007-10-17 20:32:07 +02:00
uaccess_32.h
uaccess_64.h
uaccess.h
ucontext.h x86: unify some more trivial include/asm-x86/ 32/64 variants 2007-10-17 20:17:10 +02:00
unaligned.h x86: unify some more trivial include/asm-x86/ 32/64 variants 2007-10-17 20:17:10 +02:00
unistd_32.h
unistd_64.h x86: cleanup 64bit unistd.h 2007-10-17 20:16:36 +02:00
unistd.h
unwind.h x86: unify include/asm/unwind_32/64.h 2007-10-17 20:32:38 +02:00
user32.h
user_32.h
user_64.h
user.h
vdso.h x86 vDSO: i386 vdso32 2008-01-30 13:30:42 +01:00
vga.h
vgtod.h
vic.h
vm86.h
vmi_time.h
vmi.h
voyager.h
vsyscall.h i386/x8664: cleanup the shared hpet code 2007-10-12 23:04:23 +02:00
xor_32.h x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
xor_64.h x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
xor.h