/// Target Pointer Size information... Module::PointerSize Module::getPointerSize() const { std::string temp = DataLayout; Module::PointerSize ret = AnyPointerSize; while (!temp.empty()) { std::string token = getToken(temp, "-"); char signal = getToken(token, ":")[0]; if (signal == 'p') { int size = atoi(getToken(token, ":").c_str()); if (size == 32) ret = Pointer32; else if (size == 64) ret = Pointer64; } } return ret; }
/// Target endian information... Module::Endianness Module::getEndianness() const { std::string temp = DataLayout; Module::Endianness ret = AnyEndianness; while (!temp.empty()) { std::string token = getToken(temp, "-"); if (token[0] == 'e') { ret = LittleEndian; } else if (token[0] == 'E') { ret = BigEndian; } } return ret; }