From c4e441804ebe5a2d0eadbd9b0840d4f1b12d5a6f Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Mon, 28 Jan 2013 21:45:32 +0000 Subject: Add a comment mentioning that InstructionSimplify routines do, in fact, resolve undef uses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173721 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Analysis/InstructionSimplify.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'include/llvm/Analysis') diff --git a/include/llvm/Analysis/InstructionSimplify.h b/include/llvm/Analysis/InstructionSimplify.h index b653e799f7..06e4432967 100644 --- a/include/llvm/Analysis/InstructionSimplify.h +++ b/include/llvm/Analysis/InstructionSimplify.h @@ -14,6 +14,12 @@ // ("and i32 %x, %x" -> "%x"). If the simplification is also an instruction // then it dominates the original instruction. // +// These routines implicitly resolve undef uses. The easiest way to be safe when +// using these routines to obtain simplified values for existing instructions is +// to always replace all uses of the instructions with the resulting simplified +// values. This will prevent other code from seeing the same undef uses and +// resolving them to different values. +// //===----------------------------------------------------------------------===// #ifndef LLVM_ANALYSIS_INSTRUCTIONSIMPLIFY_H -- cgit v1.2.3