linux/arch/riscv/include/asm
Ben Dooks 44aa25c000 riscv: asm: use .insn for making custom instructions
The assembler has .insn for building custom instructions
now, so change the .4byte to .insn. This ensures the output
is marked as an instruction and not as data which may
confuse both debuggers and anything else that relies on
this sort of marking.

Add an ASM_INSN_I() wrapper in asm.h to allow the selecting
of how this is output so older assemblers are still good.

Reviewed-by: Andrew Jones <ajones@ventanamicro.com>
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Link: https://lore.kernel.org/r/20251024171640.65232-1-ben.dooks@codethink.co.uk
Signed-off-by: Paul Walmsley <pjw@kernel.org>
2025-10-27 18:58:37 -06:00
..
vdso riscv: hwprobe: Fix stale vDSO data for late-initialized keys at boot 2025-10-17 22:23:11 -06:00
vendor_extensions riscv: asm: use .insn for making custom instructions 2025-10-27 18:58:37 -06:00
Kbuild fprobe: Add fprobe_header encoding feature 2024-12-26 10:50:05 -05:00
acenv.h RISC-V: Add support to build the ACPI core 2023-06-01 08:45:01 -07:00
acpi.h ACPI: RISCV: Make acpi_numa_get_nid() to be static 2024-09-17 12:02:48 -07:00
alternative-macros.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
alternative.h riscv: errata: Fix the PAUSE Opcode for MIPS P8700 2025-09-19 10:33:56 -06:00
arch_hweight.h RISC-V: separate Zbb optimisations requiring and not requiring toolchain support 2025-03-18 08:53:02 +00:00
archrandom.h RISC-V: Implement archrandom when Zkr is available 2024-01-17 18:20:49 -08:00
asm-extable.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
asm-offsets.h
asm-prototypes.h RISC-V Patches for the 6.16 Merge Window, Part 1 2025-06-06 18:05:18 -07:00
asm.h riscv: asm: use .insn for making custom instructions 2025-10-27 18:58:37 -06:00
assembler.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
atomic.h Merge patch series "Rework & improve riscv cmpxchg.h and atomic.h" 2024-04-28 14:50:33 -07:00
barrier.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
bitops.h riscv: Add __attribute_const__ to ffs()-family implementations 2025-09-08 14:58:51 -07:00
bug.h riscv/bug: Add ARCH_WARN_ASM macro for BUG/WARN asm code sharing with Rust 2025-07-23 00:04:53 +02:00
bugs.h riscv: Add ghostwrite vulnerability 2025-01-18 12:33:39 -08:00
cache.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
cacheflush.h mm: introduce memdesc_flags_t 2025-09-13 16:55:07 -07:00
cacheinfo.h
cfi.h kcfi: Rename CONFIG_CFI_CLANG to CONFIG_CFI 2025-09-24 14:29:14 -07:00
checksum.h RISC-V: separate Zbb optimisations requiring and not requiring toolchain support 2025-03-18 08:53:02 +00:00
clint.h
clocksource.h
cmpxchg.h bpf-next-6.18 2025-09-30 17:58:11 -07:00
compat.h RISC-V: Remove unnecessary include from compat.h 2024-11-26 11:48:53 -08:00
cpu.h RISC-V: Add support to build the ACPI core 2023-06-01 08:45:01 -07:00
cpu_ops.h riscv: Use the same CPU operations for all CPUs 2024-01-04 15:03:07 -08:00
cpu_ops_sbi.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
cpufeature-macros.h riscv: Move cpufeature.h macros into their own header 2024-11-11 07:33:08 -08:00
cpufeature.h riscv: add a forward declaration for cpuinfo_op 2025-10-17 22:10:01 -06:00
cpuidle.h
crash_reserve.h kexec: split crashkernel reservation code out from crash_core.c 2024-02-23 17:48:21 -08:00
csr.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
current.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
delay.h
dma-noncoherent.h riscv: mm: dma-noncoherent: nonstandard cache operations support 2023-09-01 09:08:57 -07:00
dmi.h riscv: dmi: Add SMBIOS/DMI support 2024-06-26 08:02:33 -07:00
efi.h Merge patch series "riscv: Introduce KASLR" 2023-09-08 11:25:13 -07:00
elf.h riscv: Introduce set_compat_task() in asm/compat.h 2024-03-19 16:39:40 -07:00
entry-common.h riscv: Fix default misaligned access trap 2024-11-12 14:45:26 -08:00
errata_list.h riscv: errata: Fix the PAUSE Opcode for MIPS P8700 2025-09-19 10:33:56 -06:00
errata_list_vendors.h riscv: errata: Fix the PAUSE Opcode for MIPS P8700 2025-09-19 10:33:56 -06:00
exec.h riscv: Randomize lower bits of stack address 2024-09-17 08:05:10 -07:00
extable.h riscv: mm: stub extable related functions/macros for !MMU 2023-06-14 07:17:45 -07:00
fence.h riscv: Add license to fence.h 2024-09-03 07:18:33 -07:00
fixmap.h riscv: Move early dtb mapping into the fixmap region 2023-04-13 18:14:26 -07:00
fpu.h riscv: add support for kernel-mode FPU 2024-05-19 14:36:19 -07:00
ftrace.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
futex.h riscv/futex: sign extend compare value in atomic cmpxchg 2025-02-14 13:06:31 -08:00
gdb_xml.h
gpr-num.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
hugetlb.h mm: introduce memdesc_flags_t 2025-09-13 16:55:07 -07:00
hwcap.h riscv: Add support for Zicbop 2025-06-05 11:09:37 -07:00
hwprobe.h riscv: hwprobe: Fix stale vDSO data for late-initialized keys at boot 2025-10-17 22:23:11 -06:00
image.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
insn-def.h riscv: asm: use .insn for making custom instructions 2025-10-27 18:58:37 -06:00
insn.h riscv: kprobes: Move branch_funct3 to insn.h 2025-09-16 18:46:43 -06:00
io.h riscv: introduce ioremap_wc() 2025-09-16 16:24:27 -06:00
irq.h ACPI: RISC-V: Add RPMI System MSI to GSI mapping 2025-09-25 19:49:09 -06:00
irq_stack.h riscv: Deduplicate IRQ stack switching 2023-10-27 14:43:06 -07:00
irq_work.h arch: consolidate arch_irq_work_raise prototypes 2023-11-23 11:32:29 +01:00
irqflags.h riscv: Remove unnecessary irqflags processor.h include 2024-04-16 18:50:52 -07:00
jump_label.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
kasan.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
kdebug.h
kexec.h riscv: kexec_file: Support loading Image binary file 2025-06-05 11:09:34 -07:00
kfence.h riscv: Fix IPIs usage in kfence_protect_page() 2024-12-11 11:44:03 -08:00
kgdb.h riscv: kgdb: Ensure that BUFMAX > NUMREGBYTES 2025-10-09 19:36:45 -06:00
kprobes.h riscv: Only consider swbp/ss handlers for correct privileged mode 2023-09-20 06:45:27 -07:00
kvm_aia.h RISC-V: KVM: Drop the return value of kvm_riscv_vcpu_aia_init() 2025-07-28 22:27:07 +05:30
kvm_gstage.h RISC-V: KVM: Factor-out g-stage page table management 2025-07-28 22:27:30 +05:30
kvm_host.h RISC-V: KVM: add support for FWFT SBI extension 2025-09-08 09:52:57 +05:30
kvm_mmu.h RISC-V: KVM: Factor-out g-stage page table management 2025-07-28 22:27:30 +05:30
kvm_nacl.h RISC-V: KVM: Use SBI sync SRET call when available 2024-10-28 16:44:03 +05:30
kvm_tlb.h RISC-V: KVM: Pass VMID as parameter to kvm_riscv_hfence_xyz() APIs 2025-07-28 22:27:32 +05:30
kvm_types.h
kvm_vcpu_fp.h
kvm_vcpu_insn.h
kvm_vcpu_pmu.h RISC-V: KVM: Implement get event info function 2025-09-16 11:49:31 +05:30
kvm_vcpu_sbi.h RISC-V: KVM: Upgrade the supported SBI version to 3.0 2025-09-16 11:49:31 +05:30
kvm_vcpu_sbi_fwft.h RISC-V: KVM: Implement ONE_REG interface for SBI FWFT state 2025-09-16 10:54:21 +05:30
kvm_vcpu_timer.h RISC-V: KVM: Fix kvm_riscv_vcpu_timer_pending() for Sstc 2022-10-21 11:52:45 +05:30
kvm_vcpu_vector.h KVM: RISC-V: refactor vector state reset 2025-05-21 09:34:46 +05:30
kvm_vmid.h RISC-V: KVM: Factor-out MMU related declarations into separate headers 2025-07-28 22:27:23 +05:30
linkage.h
membarrier.h membarrier: riscv: Provide core serializing command 2024-02-15 08:04:14 -08:00
mmio.h riscv/barrier: Consolidate fence definitions 2024-03-19 18:52:24 -07:00
mmiowb.h riscv/barrier: Consolidate fence definitions 2024-03-19 18:52:24 -07:00
mmu.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
mmu_context.h riscv: Add support for the tagged address ABI 2024-10-24 14:12:56 -07:00
module.h riscv: module: move find_section to module.h 2023-01-31 23:29:39 -08:00
module.lds.h
numa.h
page.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
paravirt.h RISC-V: paravirt: Add skeleton for pv-time support 2023-12-30 11:25:03 +05:30
paravirt_api_clock.h RISC-V: paravirt: Add skeleton for pv-time support 2023-12-30 11:25:03 +05:30
pci.h
perf_event.h The biggest change here is eliminating the awful idea that KVM had, of 2024-11-23 16:00:50 -08:00
pgalloc.h riscv: pgtable: unconditionally use tlb_remove_ptdesc() 2025-04-01 15:17:14 -07:00
pgtable-32.h RISC-V: Provide pgtable_l5_enabled on rv32 2023-10-31 19:15:50 -07:00
pgtable-64.h riscv: mm: Define MAX_POSSIBLE_PHYSMEM_BITS for zsmalloc 2025-10-17 22:00:29 -06:00
pgtable-bits.h mm: remove devmap related functions and page table bits 2025-07-09 22:42:18 -07:00
pgtable.h RISC-V: Define pgprot_dmacoherent() for non-coherent devices 2025-10-17 21:30:05 -06:00
probes.h
processor.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
ptrace.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
runtime-const.h riscv: fix runtime constant support for nommu kernels 2025-06-10 18:19:33 -07:00
sbi.h RISC-V updates for the v6.18 merge window (part two) 2025-10-04 10:36:22 -07:00
scs.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
seccomp.h
sections.h riscv: Check if the code to patch lies in the exit section 2024-01-09 10:58:59 -08:00
semihost.h riscv: Implement semihost.h for earlycon semihost driver 2023-01-19 14:58:19 +01:00
set_memory.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
signal32.h
simd.h riscv: vector: Fix a typo of preempt_v 2024-03-15 10:17:38 -07:00
smp.h riscv: Use IPIs for remote cache/TLB flushes by default 2024-04-29 10:49:26 -07:00
soc.h
sparsemem.h RISC-V: Don't have MAX_PHYSMEM_BITS exceed phys_addr_t 2024-09-20 01:32:39 -07:00
spinlock.h riscv: qspinlock: Fixup _Q_PENDING_LOOPS definition 2025-01-08 10:46:01 -08:00
stackprotector.h stackprotector: actually use get_random_canary() 2022-11-18 02:18:10 +01:00
stacktrace.h riscv: declare overflow_stack as exported from traps.c 2024-02-07 09:55:27 -08:00
string.h riscv: Omit optimized string routines when using KASAN 2024-09-19 01:10:00 -07:00
suspend.h riscv: Add stimecmp save and restore 2025-03-18 12:59:03 +00:00
swab.h riscv: introduce asm/swab.h 2025-09-18 08:20:25 -06:00
switch_to.h riscv: vector: Support xtheadvector save/restore 2025-01-18 12:33:33 -08:00
sync_core.h membarrier: riscv: Provide core serializing command 2024-02-15 08:04:14 -08:00
syscall.h syscall.h: introduce syscall_set_nr() 2025-05-11 17:48:15 -07:00
syscall_table.h riscv: convert to generic syscall table 2024-07-10 14:23:38 +02:00
syscall_wrapper.h riscv: Mark __se_sys_* functions __used 2024-03-26 14:11:03 -07:00
text-patching.h asm-generic: introduce text-patching.h 2024-11-07 14:25:15 -08:00
thread_info.h A set of changes to consolidate the generic TIF bits accross architectures 2025-09-30 14:36:20 -07:00
timex.h init: consolidate prototypes in linux/init.h 2023-06-09 17:44:16 -07:00
tlb.h mm: pgtable: introduce generic __tlb_remove_table() 2025-01-25 20:22:23 -08:00
tlbbatch.h riscv: Add support for BATCHED_UNMAP_TLB_FLUSH 2024-01-11 08:01:53 -08:00
tlbflush.h mm: remove arch_flush_tlb_batched_pending() arch helper 2025-07-24 19:12:32 -07:00
topology.h arch, mm: move definition of node_data to generic code 2024-09-03 21:15:28 -07:00
trace.h riscv: Add tracepoints for SBI calls and returns 2024-07-10 13:23:09 -07:00
uaccess.h riscv: Fix sparse warning about different address spaces 2025-09-05 15:33:52 -06:00
unistd.h riscv: convert to generic syscall table 2024-07-10 14:23:38 +02:00
uprobes.h asm-generic: introduce text-patching.h 2024-11-07 14:25:15 -08:00
vdso.h riscv: Replace __ASSEMBLY__ with __ASSEMBLER__ in non-uapi headers 2025-09-16 16:25:30 -06:00
vector.h riscv: vector: Fix context save/restore with xtheadvector 2025-06-12 12:13:47 -07:00
vendor_extensions.h riscv: cpufeature: Extract common elements from extension checking 2024-07-22 15:36:57 -07:00
vendorid_list.h riscv: Add xmipsexectl as a vendor extension 2025-09-18 20:36:00 -06:00
vermagic.h
vmalloc.h riscv: Add license to vmalloc.h 2024-09-03 07:18:34 -07:00
word-at-a-time.h kernel.h: removed REPEAT_BYTE from kernel.h 2024-02-01 09:47:59 -08:00
xip_fixup.h riscv: drop the use of XIP_OFFSET in XIP_FIXUP_FLASH_OFFSET 2024-09-12 07:22:59 -07:00
xor.h riscv: Add vector extension XOR implementation 2024-01-16 07:13:55 -08:00