[all-commits] [llvm/llvm-project] e3d87f: [IR][IPSCCP] Treat different function type as addr...

Nikita Popov via All-commits all-commits at lists.llvm.org
Wed Mar 9 01:47:10 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e3d87fd6e5a829d22c29db32679998bf818f526f
      https://github.com/llvm/llvm-project/commit/e3d87fd6e5a829d22c29db32679998bf818f526f
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2022-03-09 (Wed, 09 Mar 2022)

  Changed paths:
    M llvm/lib/IR/Function.cpp
    M llvm/test/Transforms/SCCP/opaque-ptr.ll

  Log Message:
  -----------
  [IR][IPSCCP] Treat different function type as address taken (PR54258)

Without opaque pointers, this code currently treats a call through
a bitcast as the function being address taken, and IPSCCP relies
on this for correctness. Match the same behavior under opaque
pointers by checking that the function types are the same.

Fixes https://github.com/llvm/llvm-project/issues/54258.




More information about the All-commits mailing list