[all-commits] [llvm/llvm-project] e90c6f: [MachineCopyPropagation] Fix differences in code g...

bzEq via All-commits all-commits at lists.llvm.org
Fri Jul 2 04:27:24 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e90c6f559637446330335ce6638ae3e3827992e8
      https://github.com/llvm/llvm-project/commit/e90c6f559637446330335ce6638ae3e3827992e8
  Author: Alexandru Octavian Butiu <alexandru.octavian.butiu at gmail.com>
  Date:   2021-07-02 (Fri, 02 Jul 2021)

  Changed paths:
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    A llvm/test/CodeGen/X86/machine-copy-dbgvalue.mir

  Log Message:
  -----------
  [MachineCopyPropagation] Fix differences in code gen when compiling with -g

Fixes bugs [[ https://bugs.llvm.org/show_bug.cgi?id=50580 | 50580 ]] and [[ https://bugs.llvm.org/show_bug.cgi?id=49446 | 49446  ]]

When compiling with -g "DBG_VALUE <reg>"  instructions are added in the MIR, if such a instruction is inserted between instructions that use <reg> then MachineCopyPropagation invalidates <reg> , this causes some copies  to not be propagated and causes differences in code generation (ex bugs 50580 and 49446 ).  DBG_VALUE instructions should be ignored  since they don't actually modify the register.

Reviewed By: lkail

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




More information about the All-commits mailing list