[all-commits] [llvm/llvm-project] 677343: [IPCP] Bail on extractvalue's with more than 1 index.

topperc via All-commits all-commits at lists.llvm.org
Thu Oct 31 10:56:07 PDT 2019


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 6773435624288f9c69d7ae4b804f2410808cf1a2
      https://github.com/llvm/llvm-project/commit/6773435624288f9c69d7ae4b804f2410808cf1a2
  Author: Craig Topper <craig.topper at intel.com>
  Date:   2019-10-31 (Thu, 31 Oct 2019)

  Changed paths:
    M llvm/lib/Transforms/IPO/IPConstantPropagation.cpp
    A llvm/test/Transforms/IPConstantProp/PR43857.ll

  Log Message:
  -----------
  [IPCP] Bail on extractvalue's with more than 1 index.

The replacement code only looks at the first index of the
extractvalue. If there are additional indices we'll end
up doing a bad replacement.

This only happens if the function returns a nested struct. Not
sure if clang ever generates such code. The original report came
from ispc.

Fixes PR43857

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




More information about the All-commits mailing list