[all-commits] [llvm/llvm-project] fa496c: [Intrinsic] Give "is.constant" the "convergent" at...
Bill Wendling via All-commits
all-commits at lists.llvm.org
Mon Mar 30 11:47:28 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: fa496ce3c6774097080c8a9cb808da56f383b938
https://github.com/llvm/llvm-project/commit/fa496ce3c6774097080c8a9cb808da56f383b938
Author: Bill Wendling <isanbard at gmail.com>
Date: 2020-03-30 (Mon, 30 Mar 2020)
Changed paths:
M llvm/include/llvm/IR/Intrinsics.td
A llvm/test/Transforms/JumpThreading/is_constant.ll
Log Message:
-----------
[Intrinsic] Give "is.constant" the "convergent" attribute
Summary:
Code frequently relies upon the results of "is.constant" intrinsics to
DCE invalid code paths. We don't want the intrinsic to be made control-
dependent on any additional values. For instance, we can't split a PHI
into a "constant" and "non-constant" part via jump threading in order
to "optimize" the constant part, because the "is.constant" intrinsic is
meant to return "false".
Reviewers: wmi, kazu, MaskRay
Reviewed By: kazu
Subscribers: jdoerfert, efriedma, joerg, lebedev.ri, nikic, xbolva00, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D75799
More information about the All-commits
mailing list