[all-commits] [llvm/llvm-project] f74439: [Statepoint] Handle `undef` operands in statepoint.

dantrushin via All-commits all-commits at lists.llvm.org
Mon Jan 18 04:27:07 PST 2021


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: f7443905af1e06eaacda1e437fff8d54dc89c487
      https://github.com/llvm/llvm-project/commit/f7443905af1e06eaacda1e437fff8d54dc89c487
  Author: Denis Antrushin <dantrushin at gmail.com>
  Date:   2021-01-18 (Mon, 18 Jan 2021)

  Changed paths:
    M llvm/lib/CodeGen/FixupStatepointCallerSaved.cpp
    M llvm/lib/CodeGen/StackMaps.cpp
    A llvm/test/CodeGen/X86/statepoint-fixup-undef.mir

  Log Message:
  -----------
  [Statepoint] Handle `undef` operands in statepoint.

Currently when spilling statepoint register operands in FixupStatepoints
we do not pay attention that it might be `undef`. We just generate a
spill, which may lead to verifier error because we have a use without def.

To handle it, let FixupStateponts ignore `undef` register operands
completely and change them to some constant value when generating
stack map. Use same value as used by ISel for this purpose (0xFEFEFEFE).

Reviewed By: reames

Differential Revision: https://reviews.llvm.org/D94703




More information about the All-commits mailing list