mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-25 04:39:44 +00:00
For PR387:
Close out this long standing bug by removing the remaining overloaded virtual functions in LLVM. The -Woverloaded-virtual option is now turned on. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29934 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
dc87725902
commit
3a9ec2463d
@ -254,7 +254,7 @@ else
|
||||
C.Flags += -D_DEBUG
|
||||
endif
|
||||
|
||||
CXX.Flags += $(CXXFLAGS)
|
||||
CXX.Flags += $(CXXFLAGS) -Woverloaded-virtual
|
||||
C.Flags += $(CFLAGS)
|
||||
CPP.BaseFlags += $(CPPFLAGS)
|
||||
LD.Flags += $(LDFLAGS)
|
||||
|
@ -43,6 +43,10 @@ std::ostream &WriteAsOperand(std::ostream &, const Value *, bool PrintTy = true,
|
||||
std::ostream &WriteAsOperand(std::ostream&, const Type*, bool PrintTy = true,
|
||||
bool PrintName = true, const Module* Context = 0);
|
||||
|
||||
#ifndef NDEBUG
|
||||
void dumpType(const Type* Ty);
|
||||
void dumpValue(const Value* Val);
|
||||
#endif
|
||||
} // End llvm namespace
|
||||
|
||||
#endif
|
||||
|
@ -65,7 +65,8 @@ namespace {
|
||||
AliasResult alias(const Value *V1, unsigned V1Size,
|
||||
const Value *V2, unsigned V2Size);
|
||||
|
||||
ModRefResult getModRefInfo(CallSite CS, Value *P, unsigned Size);
|
||||
virtual ModRefResult getModRefInfo(CallSite CS, Value *P, unsigned Size);
|
||||
virtual ModRefResult getModRefInfo(CallSite CS1, CallSite CS2);
|
||||
|
||||
private:
|
||||
void ResolveFunctionCall(Function *F, const DSCallSite &Call,
|
||||
@ -266,3 +267,9 @@ Steens::getModRefInfo(CallSite CS, Value *P, unsigned Size) {
|
||||
|
||||
return (ModRefResult)(Result & AliasAnalysis::getModRefInfo(CS, P, Size));
|
||||
}
|
||||
|
||||
AliasAnalysis::ModRefResult
|
||||
Steens::getModRefInfo(CallSite CS1, CallSite CS2)
|
||||
{
|
||||
return AliasAnalysis::getModRefInfo(CS1,CS2);
|
||||
}
|
||||
|
@ -236,7 +236,8 @@ namespace {
|
||||
//
|
||||
AliasResult alias(const Value *V1, unsigned V1Size,
|
||||
const Value *V2, unsigned V2Size);
|
||||
ModRefResult getModRefInfo(CallSite CS, Value *P, unsigned Size);
|
||||
virtual ModRefResult getModRefInfo(CallSite CS, Value *P, unsigned Size);
|
||||
virtual ModRefResult getModRefInfo(CallSite CS1, CallSite CS2);
|
||||
void getMustAliases(Value *P, std::vector<Value*> &RetVals);
|
||||
bool pointsToConstantMemory(const Value *P);
|
||||
|
||||
@ -387,6 +388,11 @@ Andersens::getModRefInfo(CallSite CS, Value *P, unsigned Size) {
|
||||
return AliasAnalysis::getModRefInfo(CS, P, Size);
|
||||
}
|
||||
|
||||
AliasAnalysis::ModRefResult
|
||||
Andersens::getModRefInfo(CallSite CS1, CallSite CS2) {
|
||||
return AliasAnalysis::getModRefInfo(CS1,CS2);
|
||||
}
|
||||
|
||||
/// getMustAlias - We can provide must alias information if we know that a
|
||||
/// pointer can only point to a specific function or the null pointer.
|
||||
/// Unfortunately we cannot determine must-alias information for global
|
||||
|
@ -2691,3 +2691,7 @@ bool PPCTargetLowering::isLegalAddressImmediate(int64_t V) const {
|
||||
// PPC allows a sign-extended 16-bit immediate field.
|
||||
return (V > -(1 << 16) && V < (1 << 16)-1);
|
||||
}
|
||||
|
||||
bool PPCTargetLowering::isLegalAddressImmediate(llvm::GlobalValue* GV) const {
|
||||
return TargetLowering::isLegalAddressImmediate(GV);
|
||||
}
|
||||
|
@ -199,6 +199,7 @@ namespace llvm {
|
||||
/// isLegalAddressImmediate - Return true if the integer value can be used
|
||||
/// as the offset of the target addressing mode.
|
||||
virtual bool isLegalAddressImmediate(int64_t V) const;
|
||||
virtual bool isLegalAddressImmediate(llvm::GlobalValue*) const;
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -1081,8 +1081,7 @@ void AssemblyWriter::printInfoComment(const Value &V) {
|
||||
}
|
||||
}
|
||||
|
||||
/// printInstruction - This member is called for each Instruction in a function..
|
||||
///
|
||||
// This member is called for each Instruction in a function..
|
||||
void AssemblyWriter::printInstruction(const Instruction &I) {
|
||||
if (AnnotationWriter) AnnotationWriter->emitInstructionAnnot(&I, Out);
|
||||
|
||||
|
@ -65,6 +65,7 @@ namespace {
|
||||
}
|
||||
|
||||
void print(std::ostream &OS) const {}
|
||||
void print(std::ostream &OS, const llvm::Module*) const {}
|
||||
|
||||
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
|
||||
AU.addRequired<CallGraph>();
|
||||
|
Loading…
Reference in New Issue
Block a user