Simplify the targetdata ctor by not passing in a "targetname" which is always

ignored.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28829 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2006-06-16 18:21:53 +00:00
parent acbc07aa22
commit c91dc678e9

View File

@ -45,19 +45,26 @@ class TargetData : public ImmutablePass {
unsigned char PointerAlignment; // Defaults to 8 bytes
public:
/// Default ctor - This has to exist, because this is a pass, but it should
/// never be used.
TargetData() {
assert(0 && "ERROR: Bad TargetData ctor used. "
"Tool did not specify a TargetData to use?");
abort();
}
/// Constructs a TargetData from a string of the following format:
/// "E-p:64:64-d:64-f:32-l:64-i:32-s:16-b:8-B:8"
/// The above string is considered the default, and any values not specified
/// in the string will be assumed to be as above.
TargetData(const std::string &TargetName = "",
const std::string &TargetDescription = "") {
assert(!TargetName.empty() &&
"ERROR: Tool did not specify a target data to use!");
TargetData(const std::string &TargetDescription) {
init(TargetDescription);
}
// Copy constructor
TargetData (const TargetData &TD) :
/// Initialize target data from properties stored in the module.
TargetData(const Module *M);
TargetData(const TargetData &TD) :
ImmutablePass(),
LittleEndian(TD.isLittleEndian()),
BoolAlignment(TD.getBoolAlignment()),
@ -71,7 +78,6 @@ public:
PointerAlignment(TD.getPointerAlignment()) {
}
TargetData(const std::string &ToolName, const Module *M);
~TargetData(); // Not virtual, do not subclass this class
/// init - Specify configuration if not available at ctor time.