Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull objtool fixes from Thomas Gleixner:
"Two small fixes for objtool:

- Support frame pointer setup via 'lea (%rsp), %rbp' which was not
yet supported and caused build warnings

- Disable unreacahble warnings for GCC4.4 and older to avoid false
positives caused by the compiler itself"

* 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
objtool: Support unoptimized frame pointer setup
objtool: Skip unreachable warnings for GCC 4.4 and older

+10 -3
+2
scripts/Makefile.build
··· 265 265 endif 266 266 ifdef CONFIG_GCOV_KERNEL 267 267 objtool_args += --no-unreachable 268 + else 269 + objtool_args += $(call cc-ifversion, -lt, 0405, --no-unreachable) 268 270 endif 269 271 270 272 # 'OBJECT_FILES_NON_STANDARD := y': skip objtool checking for a directory
+8 -3
tools/objtool/arch/x86/decode.c
··· 284 284 case 0x8d: 285 285 if (sib == 0x24 && rex_w && !rex_b && !rex_x) { 286 286 287 - /* lea disp(%rsp), reg */ 288 287 *type = INSN_STACK; 289 - op->src.type = OP_SRC_ADD; 288 + if (!insn.displacement.value) { 289 + /* lea (%rsp), reg */ 290 + op->src.type = OP_SRC_REG; 291 + } else { 292 + /* lea disp(%rsp), reg */ 293 + op->src.type = OP_SRC_ADD; 294 + op->src.offset = insn.displacement.value; 295 + } 290 296 op->src.reg = CFI_SP; 291 - op->src.offset = insn.displacement.value; 292 297 op->dest.type = OP_DEST_REG; 293 298 op->dest.reg = op_to_cfi_reg[modrm_reg][rex_r]; 294 299