[all-commits] [llvm/llvm-project] 34e55a: FastISel: Assert the emitted instruction defines t...

Matt Arsenault via All-commits all-commits at lists.llvm.org
Sat Sep 26 12:40:30 PDT 2026


  Branch: refs/heads/users/arsenm/fast-isel/no-zero-def-fallback
  Home:   https://github.com/llvm/llvm-project
  Commit: 34e55a6865ea63a3e633cc34a1f773d5d4fff6fa
      https://github.com/llvm/llvm-project/commit/34e55a6865ea63a3e633cc34a1f773d5d4fff6fa
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-09-26 (Sat, 26 Sep 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp

  Log Message:
  -----------
  FastISel: Assert the emitted instruction defines the result

The fallback path copied the result out of implicit_defs()[0], assuming
the first implicit physical register def is the result. That is an X86
assumption about MUL/IMUL, and it is unreachable for all but
fastEmitInst_r: FastISelEmitter skips any instruction whose first
operand is not an output register, so every opcode reaching these
helpers from generated code has an explicit def.

Co-Authored-By: Claude Opus 5 <noreply at anthropic.com>


  Commit: ea51b99a39bfb34ad52f3a3146af19c32dcfd99c
      https://github.com/llvm/llvm-project/commit/ea51b99a39bfb34ad52f3a3146af19c32dcfd99c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-09-26 (Sat, 26 Sep 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86FastISel.cpp

  Log Message:
  -----------
  Add a FastISel helper for with-overflow multiply emission


  Commit: f26ee9ac63a66b0d1db6db51e5f81e5cedac32d7
      https://github.com/llvm/llvm-project/commit/f26ee9ac63a66b0d1db6db51e5f81e5cedac32d7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-09-26 (Sat, 26 Sep 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86FastISel.cpp

  Log Message:
  -----------
  Assert fastEmitInst_rrrr's instruction defines the result


Compare: https://github.com/llvm/llvm-project/compare/ef991e5b84ba...f26ee9ac63a6

To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list