OSDN Git Service

add a layer of accessors around the Value::SubClassData member, and use
authorChris Lattner <sabre@nondot.org>
Tue, 29 Dec 2009 02:14:09 +0000 (02:14 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 29 Dec 2009 02:14:09 +0000 (02:14 +0000)
commitcafe9bba32aeed16e8e3db28b4cd4ff13160438f
treebfb7c4d1f2a2bf144d5525b22380806b86325c00
parent3990b121cf4a0b280ed3e54cf13870cbf4259e78
add a layer of accessors around the Value::SubClassData member, and use
a convention (shadowing the setter with private forwarding function) to
prevent subclasses from accidentally using it.

This exposed some bogosity in ConstantExprs, which was propaging the
opcode of the constant expr into the NUW/NSW/Exact field in the
getWithOperands/getWithOperandReplaced methods.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92239 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/BasicBlock.h
include/llvm/Constants.h
include/llvm/Function.h
include/llvm/InstrTypes.h
include/llvm/Instructions.h
include/llvm/Metadata.h
include/llvm/Value.h
lib/VMCore/Constants.cpp
lib/VMCore/Function.cpp
lib/VMCore/Instructions.cpp
lib/VMCore/Metadata.cpp