[all-commits] [llvm/llvm-project] 4e6783: [DAG] getFreeze()/getNode() - account for operand ...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Mon Sep 5 03:47:15 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4e6783f8665252622f7514c63af1dc5b0242dabe
      https://github.com/llvm/llvm-project/commit/4e6783f8665252622f7514c63af1dc5b0242dabe
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2022-09-05 (Mon, 05 Sep 2022)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    A llvm/test/CodeGen/X86/pr57554.ll

  Log Message:
  -----------
  [DAG] getFreeze()/getNode() - account for operand depth when calling isGuaranteedNotToBeUndefOrPoison (PR57554)

Similar to #57402 - we were calling isGuaranteedNotToBeUndefOrPoison on the freeze operand (with Depth = 0), but wasn't accounting for the fact that a later isGuaranteedNotToBeUndefOrPoison assertion will call from the new node (with Depth = 0 as well) - which will then recursively call isGuaranteedNotToBeUndefOrPoison for its operands with Depth = 1

Fixes #57554




More information about the All-commits mailing list