mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 03:02:36 +01:00
[C++11] Replace some comparisons with 'nullptr' with simple boolean checks to reduce verbosity.
llvm-svn: 205829
This commit is contained in:
parent
075f09bac5
commit
52173239da
@ -179,7 +179,7 @@ public:
|
||||
|
||||
typedef T* (IntrusiveRefCntPtr::*unspecified_bool_type) () const;
|
||||
operator unspecified_bool_type() const {
|
||||
return Obj == nullptr ? nullptr : &IntrusiveRefCntPtr::getPtr;
|
||||
return Obj ? &IntrusiveRefCntPtr::getPtr : nullptr;
|
||||
}
|
||||
|
||||
void swap(IntrusiveRefCntPtr& other) {
|
||||
|
@ -186,7 +186,7 @@ namespace llvm {
|
||||
|
||||
/// str - Get the contents as an std::string.
|
||||
std::string str() const {
|
||||
if (Data == nullptr) return std::string();
|
||||
if (!Data) return std::string();
|
||||
return std::string(Data, Length);
|
||||
}
|
||||
|
||||
|
@ -383,7 +383,7 @@ public:
|
||||
// Miscellaneous inspection routines.
|
||||
size_type max_size() const { return size_type(-1); }
|
||||
bool LLVM_ATTRIBUTE_UNUSED_RESULT empty() const {
|
||||
return Head == nullptr || Head == getTail();
|
||||
return !Head || Head == getTail();
|
||||
}
|
||||
|
||||
// Front and back accessor functions...
|
||||
|
@ -336,7 +336,7 @@ namespace PBQP {
|
||||
/// each node in the graph, and handleAddEdge for each edge, to give the
|
||||
/// solver an opportunity to set up any requried metadata.
|
||||
void setSolver(SolverT &S) {
|
||||
assert(Solver == nullptr && "Solver already set. Call unsetSolver().");
|
||||
assert(!Solver && "Solver already set. Call unsetSolver().");
|
||||
Solver = &S;
|
||||
for (auto NId : nodeIds())
|
||||
Solver->handleAddNode(NId);
|
||||
@ -346,7 +346,7 @@ namespace PBQP {
|
||||
|
||||
/// \brief Release from solver instance.
|
||||
void unsetSolver() {
|
||||
assert(Solver != nullptr && "Solver not set.");
|
||||
assert(Solver && "Solver not set.");
|
||||
Solver = nullptr;
|
||||
}
|
||||
|
||||
|
@ -1664,7 +1664,7 @@ class alias : public Option {
|
||||
void done() {
|
||||
if (!hasArgStr())
|
||||
error("cl::alias must have argument name specified!");
|
||||
if (AliasFor == nullptr)
|
||||
if (!AliasFor)
|
||||
error("cl::alias must have an cl::aliasopt(option) specified!");
|
||||
addArgument();
|
||||
}
|
||||
|
@ -828,9 +828,9 @@ public:
|
||||
bool operator==(const directory_iterator &RHS) const {
|
||||
if (State == RHS.State)
|
||||
return true;
|
||||
if (RHS.State == nullptr)
|
||||
if (!RHS.State)
|
||||
return State->CurrentEntry == directory_entry();
|
||||
if (State == nullptr)
|
||||
if (!State)
|
||||
return RHS.State->CurrentEntry == directory_entry();
|
||||
return State->CurrentEntry == RHS.State->CurrentEntry;
|
||||
}
|
||||
|
@ -305,7 +305,7 @@ public:
|
||||
assert(Base && "Attempted to advance iterator past end!");
|
||||
Base->increment();
|
||||
// Create an end iterator.
|
||||
if (Base->CurrentEntry == nullptr)
|
||||
if (!Base->CurrentEntry)
|
||||
Base = nullptr;
|
||||
return *this;
|
||||
}
|
||||
|
@ -39,7 +39,7 @@ void MallocSlabAllocator::Deallocate(MemSlab *Slab) {
|
||||
void BumpPtrAllocatorBase::PrintStats() const {
|
||||
unsigned NumSlabs = 0;
|
||||
size_t TotalMemory = 0;
|
||||
for (MemSlab *Slab = CurSlab; Slab != nullptr; Slab = Slab->NextPtr) {
|
||||
for (MemSlab *Slab = CurSlab; Slab; Slab = Slab->NextPtr) {
|
||||
TotalMemory += Slab->Size;
|
||||
++NumSlabs;
|
||||
}
|
||||
@ -53,7 +53,7 @@ void BumpPtrAllocatorBase::PrintStats() const {
|
||||
|
||||
size_t BumpPtrAllocatorBase::getTotalMemory() const {
|
||||
size_t TotalMemory = 0;
|
||||
for (MemSlab *Slab = CurSlab; Slab != nullptr; Slab = Slab->NextPtr) {
|
||||
for (MemSlab *Slab = CurSlab; Slab; Slab = Slab->NextPtr) {
|
||||
TotalMemory += Slab->Size;
|
||||
}
|
||||
return TotalMemory;
|
||||
|
@ -300,7 +300,7 @@ static inline bool ProvideOption(Option *Handler, StringRef ArgName,
|
||||
// Enforce value requirements
|
||||
switch (Handler->getValueExpectedFlag()) {
|
||||
case ValueRequired:
|
||||
if (Value.data() == nullptr) { // No value specified?
|
||||
if (!Value.data()) { // No value specified?
|
||||
if (i+1 >= argc)
|
||||
return Handler->error("requires a value!");
|
||||
// Steal the next argument, like for '-o filename'
|
||||
@ -400,7 +400,7 @@ static Option *HandlePrefixedOrGroupedOption(StringRef &Arg, StringRef &Value,
|
||||
// Do the lookup!
|
||||
size_t Length = 0;
|
||||
Option *PGOpt = getOptionPred(Arg, Length, isPrefixedOrGrouping, OptionsMap);
|
||||
if (PGOpt == nullptr) return nullptr;
|
||||
if (!PGOpt) return nullptr;
|
||||
|
||||
// If the option is a prefixed option, then the value is simply the
|
||||
// rest of the name... so fall through to later processing, by
|
||||
@ -770,7 +770,7 @@ void cl::ParseCommandLineOptions(int argc, const char * const *argv,
|
||||
|
||||
// Calculate how many positional values are _required_.
|
||||
bool UnboundedFound = false;
|
||||
for (size_t i = ConsumeAfterOpt != nullptr, e = PositionalOpts.size();
|
||||
for (size_t i = ConsumeAfterOpt ? 1 : 0, e = PositionalOpts.size();
|
||||
i != e; ++i) {
|
||||
Option *Opt = PositionalOpts[i];
|
||||
if (RequiresValue(Opt))
|
||||
@ -845,8 +845,7 @@ void cl::ParseCommandLineOptions(int argc, const char * const *argv,
|
||||
// All of the positional arguments have been fulfulled, give the rest to
|
||||
// the consume after option... if it's specified...
|
||||
//
|
||||
if (PositionalVals.size() >= NumPositionalRequired &&
|
||||
ConsumeAfterOpt != nullptr) {
|
||||
if (PositionalVals.size() >= NumPositionalRequired && ConsumeAfterOpt) {
|
||||
for (++i; i < argc; ++i)
|
||||
PositionalVals.push_back(std::make_pair(argv[i],i));
|
||||
break; // Handle outside of the argument processing loop...
|
||||
@ -884,18 +883,18 @@ void cl::ParseCommandLineOptions(int argc, const char * const *argv,
|
||||
Handler = LookupOption(ArgName, Value, Opts);
|
||||
|
||||
// Check to see if this "option" is really a prefixed or grouped argument.
|
||||
if (Handler == nullptr)
|
||||
if (!Handler)
|
||||
Handler = HandlePrefixedOrGroupedOption(ArgName, Value,
|
||||
ErrorParsing, Opts);
|
||||
|
||||
// Otherwise, look for the closest available option to report to the user
|
||||
// in the upcoming error.
|
||||
if (Handler == nullptr && SinkOpts.empty())
|
||||
if (!Handler && SinkOpts.empty())
|
||||
NearestHandler = LookupNearestOption(ArgName, Opts,
|
||||
NearestHandlerString);
|
||||
}
|
||||
|
||||
if (Handler == nullptr) {
|
||||
if (!Handler) {
|
||||
if (SinkOpts.empty()) {
|
||||
errs() << ProgramName << ": Unknown command line argument '"
|
||||
<< argv[i] << "'. Try: '" << argv[0] << " -help'\n";
|
||||
@ -939,7 +938,7 @@ void cl::ParseCommandLineOptions(int argc, const char * const *argv,
|
||||
<< " positional arguments: See: " << argv[0] << " -help\n";
|
||||
ErrorParsing = true;
|
||||
|
||||
} else if (ConsumeAfterOpt == nullptr) {
|
||||
} else if (!ConsumeAfterOpt) {
|
||||
// Positional args have already been handled if ConsumeAfter is specified.
|
||||
unsigned ValNo = 0, NumVals = static_cast<unsigned>(PositionalVals.size());
|
||||
for (size_t i = 0, e = PositionalOpts.size(); i != e; ++i) {
|
||||
@ -1044,7 +1043,7 @@ void cl::ParseCommandLineOptions(int argc, const char * const *argv,
|
||||
//
|
||||
|
||||
bool Option::error(const Twine &Message, StringRef ArgName) {
|
||||
if (ArgName.data() == nullptr) ArgName = ArgStr;
|
||||
if (!ArgName.data()) ArgName = ArgStr;
|
||||
if (ArgName.empty())
|
||||
errs() << HelpStr; // Be nice for positional arguments
|
||||
else
|
||||
@ -1779,7 +1778,7 @@ void cl::SetVersionPrinter(void (*func)()) {
|
||||
}
|
||||
|
||||
void cl::AddExtraVersionPrinter(void (*func)()) {
|
||||
if (ExtraVersionPrinters == nullptr)
|
||||
if (!ExtraVersionPrinters)
|
||||
ExtraVersionPrinters = new std::vector<void (*)()>;
|
||||
|
||||
ExtraVersionPrinters->push_back(func);
|
||||
|
@ -58,7 +58,7 @@ DynamicLibrary DynamicLibrary::getPermanentLibrary(const char *filename,
|
||||
SmartScopedLock<true> lock(*SymbolsMutex);
|
||||
|
||||
void *handle = dlopen(filename, RTLD_LAZY|RTLD_GLOBAL);
|
||||
if (handle == nullptr) {
|
||||
if (!handle) {
|
||||
if (errMsg) *errMsg = dlerror();
|
||||
return DynamicLibrary();
|
||||
}
|
||||
@ -66,11 +66,11 @@ DynamicLibrary DynamicLibrary::getPermanentLibrary(const char *filename,
|
||||
#ifdef __CYGWIN__
|
||||
// Cygwin searches symbols only in the main
|
||||
// with the handle of dlopen(NULL, RTLD_GLOBAL).
|
||||
if (filename == NULL)
|
||||
if (!filename)
|
||||
handle = RTLD_DEFAULT;
|
||||
#endif
|
||||
|
||||
if (OpenedHandles == nullptr)
|
||||
if (!OpenedHandles)
|
||||
OpenedHandles = new DenseSet<void *>();
|
||||
|
||||
// If we've already loaded this library, dlclose() the handle in order to
|
||||
|
@ -323,7 +323,7 @@ void FoldingSetImpl::InsertNode(Node *N, void *InsertPos) {
|
||||
// If this is the first insertion into this bucket, its next pointer will be
|
||||
// null. Pretend as if it pointed to itself, setting the low bit to indicate
|
||||
// that it is a pointer to the bucket.
|
||||
if (Next == nullptr)
|
||||
if (!Next)
|
||||
Next = reinterpret_cast<void*>(reinterpret_cast<intptr_t>(Bucket)|1);
|
||||
|
||||
// Set the node's next pointer, and make the bucket point to the node.
|
||||
@ -337,7 +337,7 @@ bool FoldingSetImpl::RemoveNode(Node *N) {
|
||||
// Because each bucket is a circular list, we don't need to compute N's hash
|
||||
// to remove it.
|
||||
void *Ptr = N->getNextInBucket();
|
||||
if (Ptr == nullptr) return false; // Not in folding set.
|
||||
if (!Ptr) return false; // Not in folding set.
|
||||
|
||||
--NumNodes;
|
||||
N->SetNextInBucket(nullptr);
|
||||
@ -390,7 +390,7 @@ FoldingSetImpl::Node *FoldingSetImpl::GetOrInsertNode(FoldingSetImpl::Node *N) {
|
||||
FoldingSetIteratorImpl::FoldingSetIteratorImpl(void **Bucket) {
|
||||
// Skip to the first non-null non-self-cycle bucket.
|
||||
while (*Bucket != reinterpret_cast<void*>(-1) &&
|
||||
(*Bucket == nullptr || GetNextPtr(*Bucket) == nullptr))
|
||||
(!*Bucket || !GetNextPtr(*Bucket)))
|
||||
++Bucket;
|
||||
|
||||
NodePtr = static_cast<FoldingSetNode*>(*Bucket);
|
||||
@ -410,7 +410,7 @@ void FoldingSetIteratorImpl::advance() {
|
||||
do {
|
||||
++Bucket;
|
||||
} while (*Bucket != reinterpret_cast<void*>(-1) &&
|
||||
(*Bucket == nullptr || GetNextPtr(*Bucket) == nullptr));
|
||||
(!*Bucket || !GetNextPtr(*Bucket)));
|
||||
|
||||
NodePtr = static_cast<FoldingSetNode*>(*Bucket);
|
||||
}
|
||||
@ -420,6 +420,5 @@ void FoldingSetIteratorImpl::advance() {
|
||||
// FoldingSetBucketIteratorImpl Implementation
|
||||
|
||||
FoldingSetBucketIteratorImpl::FoldingSetBucketIteratorImpl(void **Bucket) {
|
||||
Ptr = (*Bucket == nullptr || GetNextPtr(*Bucket) == nullptr) ? (void*) Bucket
|
||||
: *Bucket;
|
||||
Ptr = (!*Bucket || !GetNextPtr(*Bucket)) ? (void*) Bucket : *Bucket;
|
||||
}
|
||||
|
@ -24,7 +24,7 @@ void ManagedStaticBase::RegisterManagedStatic(void *(*Creator)(),
|
||||
if (llvm_is_multithreaded()) {
|
||||
llvm_acquire_global_lock();
|
||||
|
||||
if (Ptr == nullptr) {
|
||||
if (!Ptr) {
|
||||
void* tmp = Creator ? Creator() : nullptr;
|
||||
|
||||
TsanHappensBefore(this);
|
||||
|
@ -46,7 +46,7 @@ static unsigned PrintStack(const PrettyStackTraceEntry *Entry, raw_ostream &OS){
|
||||
/// PrintCurStackTrace - Print the current stack trace to the specified stream.
|
||||
static void PrintCurStackTrace(raw_ostream &OS) {
|
||||
// Don't print an empty trace.
|
||||
if (PrettyStackTraceHead->get() == nullptr) return;
|
||||
if (!PrettyStackTraceHead->get()) return;
|
||||
|
||||
// If there are pretty stack frames registered, walk and emit them.
|
||||
OS << "Stack dump:\n";
|
||||
|
@ -114,7 +114,7 @@ SourceMgr::getLineAndColumn(SMLoc Loc, int BufferID) const {
|
||||
if (*Ptr == '\n') ++LineNo;
|
||||
|
||||
// Allocate the line number cache if it doesn't exist.
|
||||
if (LineNoCache == nullptr)
|
||||
if (!LineNoCache)
|
||||
LineNoCache = new LineNoCacheTy();
|
||||
|
||||
// Update the line # cache.
|
||||
|
@ -70,7 +70,7 @@ unsigned StringMapImpl::LookupBucketFor(StringRef Name) {
|
||||
while (1) {
|
||||
StringMapEntryBase *BucketItem = TheTable[BucketNo];
|
||||
// If we found an empty bucket, this key isn't in the table yet, return it.
|
||||
if (LLVM_LIKELY(BucketItem == nullptr)) {
|
||||
if (LLVM_LIKELY(!BucketItem)) {
|
||||
// If we found a tombstone, we want to reuse the tombstone instead of an
|
||||
// empty bucket. This reduces probing.
|
||||
if (FirstTombstone != -1) {
|
||||
@ -124,7 +124,7 @@ int StringMapImpl::FindKey(StringRef Key) const {
|
||||
while (1) {
|
||||
StringMapEntryBase *BucketItem = TheTable[BucketNo];
|
||||
// If we found an empty bucket, this key isn't in the table yet, return.
|
||||
if (LLVM_LIKELY(BucketItem == nullptr))
|
||||
if (LLVM_LIKELY(!BucketItem))
|
||||
return -1;
|
||||
|
||||
if (BucketItem == getTombstoneVal()) {
|
||||
@ -212,7 +212,7 @@ void StringMapImpl::RehashTable() {
|
||||
// Fast case, bucket available.
|
||||
unsigned FullHash = HashTable[I];
|
||||
unsigned NewBucket = FullHash & (NewSize-1);
|
||||
if (NewTableArray[NewBucket] == nullptr) {
|
||||
if (!NewTableArray[NewBucket]) {
|
||||
NewTableArray[FullHash & (NewSize-1)] = Bucket;
|
||||
NewHashArray[FullHash & (NewSize-1)] = FullHash;
|
||||
continue;
|
||||
|
@ -53,7 +53,7 @@ const Target *TargetRegistry::lookupTarget(const std::string &ArchName,
|
||||
// Get the target specific parser.
|
||||
std::string TempError;
|
||||
TheTarget = TargetRegistry::lookupTarget(TheTriple.getTriple(), TempError);
|
||||
if (TheTarget == nullptr) {
|
||||
if (!TheTarget) {
|
||||
Error = ": error: unable to get target for '"
|
||||
+ TheTriple.getTriple()
|
||||
+ "', see --version and --triple.\n";
|
||||
|
@ -264,7 +264,7 @@ TimerGroup::TimerGroup(StringRef name)
|
||||
TimerGroup::~TimerGroup() {
|
||||
// If the timer group is destroyed before the timers it owns, accumulate and
|
||||
// print the timing data.
|
||||
while (FirstTimer != nullptr)
|
||||
while (FirstTimer)
|
||||
removeTimer(*FirstTimer);
|
||||
|
||||
// Remove the group from the TimerGroupList.
|
||||
@ -291,7 +291,7 @@ void TimerGroup::removeTimer(Timer &T) {
|
||||
|
||||
// Print the report when all timers in this group are destroyed if some of
|
||||
// them were started.
|
||||
if (FirstTimer != nullptr || TimersToPrint.empty())
|
||||
if (FirstTimer || TimersToPrint.empty())
|
||||
return;
|
||||
|
||||
raw_ostream *OutStream = CreateInfoOutputFile();
|
||||
|
@ -1941,7 +1941,7 @@ void SequenceNode::increment() {
|
||||
case Token::TK_BlockEntry:
|
||||
getNext();
|
||||
CurrentEntry = parseBlockNode();
|
||||
if (CurrentEntry == nullptr) { // An error occurred.
|
||||
if (!CurrentEntry) { // An error occurred.
|
||||
IsAtEnd = true;
|
||||
CurrentEntry = nullptr;
|
||||
}
|
||||
@ -1963,7 +1963,7 @@ void SequenceNode::increment() {
|
||||
case Token::TK_BlockEntry:
|
||||
getNext();
|
||||
CurrentEntry = parseBlockNode();
|
||||
if (CurrentEntry == nullptr) { // An error occurred.
|
||||
if (!CurrentEntry) { // An error occurred.
|
||||
IsAtEnd = true;
|
||||
CurrentEntry = nullptr;
|
||||
}
|
||||
|
@ -111,7 +111,7 @@ static bool IsEliminableAddrSpaceCast(Operator *Cast) {
|
||||
bool NVPTXFavorNonGenericAddrSpaces::hoistAddrSpaceCastFromGEP(
|
||||
GEPOperator *GEP) {
|
||||
Operator *Cast = dyn_cast<Operator>(GEP->getPointerOperand());
|
||||
if (Cast == nullptr)
|
||||
if (!Cast)
|
||||
return false;
|
||||
|
||||
if (!IsEliminableAddrSpaceCast(Cast))
|
||||
|
Loading…
Reference in New Issue
Block a user