No description
  • C 98.2%
  • Assembly 1%
  • Makefile 0.3%
  • Shell 0.2%
  • Python 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Arnd Bergmann 01e86da75c ARM: omap1: fix building with clang IAS
[ Upstream commit 28399a5a6d569c9bdb612345e4933046ca37cde5 ]

The clang integrated assembler fails to build one file with
a complex asm instruction:

arch/arm/mach-omap1/ams-delta-fiq-handler.S:249:2: error: invalid instruction, any one of the following would fix this:
 mov r10, #(1 << (((NR_IRQS_LEGACY + 12) - NR_IRQS_LEGACY) % 32)) @ set deferred_fiq bit
 ^
arch/arm/mach-omap1/ams-delta-fiq-handler.S:249:2: note: instruction requires: armv6t2
 mov r10, #(1 << (((NR_IRQS_LEGACY + 12) - NR_IRQS_LEGACY) % 32)) @ set deferred_fiq bit
 ^
arch/arm/mach-omap1/ams-delta-fiq-handler.S:249:2: note: instruction requires: thumb2
 mov r10, #(1 << (((NR_IRQS_LEGACY + 12) - NR_IRQS_LEGACY) % 32)) @ set deferred_fiq bit
 ^

The problem is that 'NR_IRQS_LEGACY' is not defined here. Apparently
gas does not care because we first add and then subtract this number,
leading to the immediate value to be the same regardless of the
specific definition of NR_IRQS_LEGACY.

Neither the way that 'gas' just silently builds this file, nor the
way that clang IAS makes nonsensical suggestions for how to fix it
is great. Fortunately there is an easy fix, which is to #include
the header that contains the definition.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Tony Lindgren <tony@atomide.com>
Link: https://lore.kernel.org/r/20210308153430.2530616-1-arnd@kernel.org'
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-04-21 12:56:13 +02:00
arch ARM: omap1: fix building with clang IAS 2021-04-21 12:56:13 +02:00
block block: only update parent bi_status when bio fail 2021-04-16 11:46:38 +02:00
certs
crypto crypto: x86 - Regularize glue function prototypes 2021-03-20 10:39:47 +01:00
Documentation dt-bindings: net: ethernet-controller: fix typo in NVMEM 2021-04-14 08:24:18 +02:00
drivers dmaengine: dw: Make it dependent to HAS_IOMEM 2021-04-21 12:56:13 +02:00
fs block: don't ignore REQ_NOWAIT for direct IO 2021-04-16 11:46:38 +02:00
include net/mlx5: Fix PBMC register mapping 2021-04-14 08:24:17 +02:00
init init/Kconfig: make COMPILE_TEST depend on HAS_IOMEM 2021-04-10 13:34:32 +02:00
ipc
kernel lockdep: Add a missing initialization hint to the "INFO: Trying to register non-static key" message 2021-04-21 12:56:13 +02:00
lib
LICENSES
mm mm: fix race by making init_zero_pfn() early_initcall 2021-04-07 14:47:42 +02:00
net neighbour: Disregard DEAD dst in neigh_update 2021-04-21 12:56:13 +02:00
samples
scripts
security integrity: double check iint_cache was initialized 2021-03-30 14:35:24 +02:00
sound ASoC: max98373: Added 30ms turn on/off time delay 2021-04-21 12:56:13 +02:00
tools perf map: Tighten snprintf() string precision to pass gcc check on some 32-bit arches 2021-04-16 11:46:39 +02:00
usr
virt
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS
Makefile Linux 5.4.113 2021-04-16 11:46:39 +02:00
README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.