mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-07 12:28:24 +00:00
80-column and whitespace fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83489 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -138,7 +138,7 @@ Value *LibCallOptimization::EmitStrLen(Value *Ptr, IRBuilder<> &B) {
|
||||
|
||||
Constant *StrLen =M->getOrInsertFunction("strlen", AttrListPtr::get(AWI, 2),
|
||||
TD->getIntPtrType(*Context),
|
||||
Type::getInt8PtrTy(*Context),
|
||||
Type::getInt8PtrTy(*Context),
|
||||
NULL);
|
||||
CallInst *CI = B.CreateCall(StrLen, CastToCStr(Ptr, B), "strlen");
|
||||
if (const Function *F = dyn_cast<Function>(StrLen->stripPointerCasts()))
|
||||
@@ -169,9 +169,10 @@ Value *LibCallOptimization::EmitMemChr(Value *Ptr, Value *Val,
|
||||
AWI = AttributeWithIndex::get(~0u, Attribute::ReadOnly | Attribute::NoUnwind);
|
||||
|
||||
Value *MemChr = M->getOrInsertFunction("memchr", AttrListPtr::get(&AWI, 1),
|
||||
Type::getInt8PtrTy(*Context),
|
||||
Type::getInt8PtrTy(*Context),
|
||||
Type::getInt32Ty(*Context), TD->getIntPtrType(*Context),
|
||||
Type::getInt8PtrTy(*Context),
|
||||
Type::getInt8PtrTy(*Context),
|
||||
Type::getInt32Ty(*Context),
|
||||
TD->getIntPtrType(*Context),
|
||||
NULL);
|
||||
CallInst *CI = B.CreateCall3(MemChr, CastToCStr(Ptr, B), Val, Len, "memchr");
|
||||
|
||||
@@ -256,7 +257,9 @@ void LibCallOptimization::EmitPutChar(Value *Char, IRBuilder<> &B) {
|
||||
Value *PutChar = M->getOrInsertFunction("putchar", Type::getInt32Ty(*Context),
|
||||
Type::getInt32Ty(*Context), NULL);
|
||||
CallInst *CI = B.CreateCall(PutChar,
|
||||
B.CreateIntCast(Char, Type::getInt32Ty(*Context), "chari"),
|
||||
B.CreateIntCast(Char,
|
||||
Type::getInt32Ty(*Context),
|
||||
"chari"),
|
||||
"putchar");
|
||||
|
||||
if (const Function *F = dyn_cast<Function>(PutChar->stripPointerCasts()))
|
||||
@@ -290,10 +293,14 @@ void LibCallOptimization::EmitFPutC(Value *Char, Value *File, IRBuilder<> &B) {
|
||||
AWI[1] = AttributeWithIndex::get(~0u, Attribute::NoUnwind);
|
||||
Constant *F;
|
||||
if (isa<PointerType>(File->getType()))
|
||||
F = M->getOrInsertFunction("fputc", AttrListPtr::get(AWI, 2), Type::getInt32Ty(*Context),
|
||||
Type::getInt32Ty(*Context), File->getType(), NULL);
|
||||
F = M->getOrInsertFunction("fputc", AttrListPtr::get(AWI, 2),
|
||||
Type::getInt32Ty(*Context),
|
||||
Type::getInt32Ty(*Context), File->getType(),
|
||||
NULL);
|
||||
else
|
||||
F = M->getOrInsertFunction("fputc", Type::getInt32Ty(*Context), Type::getInt32Ty(*Context),
|
||||
F = M->getOrInsertFunction("fputc",
|
||||
Type::getInt32Ty(*Context),
|
||||
Type::getInt32Ty(*Context),
|
||||
File->getType(), NULL);
|
||||
Char = B.CreateIntCast(Char, Type::getInt32Ty(*Context), "chari");
|
||||
CallInst *CI = B.CreateCall2(F, Char, File, "fputc");
|
||||
@@ -312,7 +319,8 @@ void LibCallOptimization::EmitFPutS(Value *Str, Value *File, IRBuilder<> &B) {
|
||||
AWI[2] = AttributeWithIndex::get(~0u, Attribute::NoUnwind);
|
||||
Constant *F;
|
||||
if (isa<PointerType>(File->getType()))
|
||||
F = M->getOrInsertFunction("fputs", AttrListPtr::get(AWI, 3), Type::getInt32Ty(*Context),
|
||||
F = M->getOrInsertFunction("fputs", AttrListPtr::get(AWI, 3),
|
||||
Type::getInt32Ty(*Context),
|
||||
Type::getInt8PtrTy(*Context),
|
||||
File->getType(), NULL);
|
||||
else
|
||||
@@ -339,12 +347,14 @@ void LibCallOptimization::EmitFWrite(Value *Ptr, Value *Size, Value *File,
|
||||
F = M->getOrInsertFunction("fwrite", AttrListPtr::get(AWI, 3),
|
||||
TD->getIntPtrType(*Context),
|
||||
Type::getInt8PtrTy(*Context),
|
||||
TD->getIntPtrType(*Context), TD->getIntPtrType(*Context),
|
||||
TD->getIntPtrType(*Context),
|
||||
TD->getIntPtrType(*Context),
|
||||
File->getType(), NULL);
|
||||
else
|
||||
F = M->getOrInsertFunction("fwrite", TD->getIntPtrType(*Context),
|
||||
Type::getInt8PtrTy(*Context),
|
||||
TD->getIntPtrType(*Context), TD->getIntPtrType(*Context),
|
||||
TD->getIntPtrType(*Context),
|
||||
TD->getIntPtrType(*Context),
|
||||
File->getType(), NULL);
|
||||
CallInst *CI = B.CreateCall4(F, CastToCStr(Ptr, B), Size,
|
||||
ConstantInt::get(TD->getIntPtrType(*Context), 1), File);
|
||||
@@ -664,7 +674,8 @@ struct StrCmpOpt : public LibCallOptimization {
|
||||
virtual Value *CallOptimizer(Function *Callee, CallInst *CI, IRBuilder<> &B) {
|
||||
// Verify the "strcmp" function prototype.
|
||||
const FunctionType *FT = Callee->getFunctionType();
|
||||
if (FT->getNumParams() != 2 || FT->getReturnType() != Type::getInt32Ty(*Context) ||
|
||||
if (FT->getNumParams() != 2 ||
|
||||
FT->getReturnType() != Type::getInt32Ty(*Context) ||
|
||||
FT->getParamType(0) != FT->getParamType(1) ||
|
||||
FT->getParamType(0) != Type::getInt8PtrTy(*Context))
|
||||
return 0;
|
||||
@@ -711,7 +722,8 @@ struct StrNCmpOpt : public LibCallOptimization {
|
||||
virtual Value *CallOptimizer(Function *Callee, CallInst *CI, IRBuilder<> &B) {
|
||||
// Verify the "strncmp" function prototype.
|
||||
const FunctionType *FT = Callee->getFunctionType();
|
||||
if (FT->getNumParams() != 3 || FT->getReturnType() != Type::getInt32Ty(*Context) ||
|
||||
if (FT->getNumParams() != 3 ||
|
||||
FT->getReturnType() != Type::getInt32Ty(*Context) ||
|
||||
FT->getParamType(0) != FT->getParamType(1) ||
|
||||
FT->getParamType(0) != Type::getInt8PtrTy(*Context) ||
|
||||
!isa<IntegerType>(FT->getParamType(2)))
|
||||
@@ -804,7 +816,8 @@ struct StrNCpyOpt : public LibCallOptimization {
|
||||
|
||||
if (SrcLen == 0) {
|
||||
// strncpy(x, "", y) -> memset(x, '\0', y, 1)
|
||||
EmitMemSet(Dst, ConstantInt::get(Type::getInt8Ty(*Context), '\0'), LenOp, B);
|
||||
EmitMemSet(Dst, ConstantInt::get(Type::getInt8Ty(*Context), '\0'), LenOp,
|
||||
B);
|
||||
return Dst;
|
||||
}
|
||||
|
||||
@@ -992,7 +1005,8 @@ struct MemSetOpt : public LibCallOptimization {
|
||||
return 0;
|
||||
|
||||
// memset(p, v, n) -> llvm.memset(p, v, n, 1)
|
||||
Value *Val = B.CreateIntCast(CI->getOperand(2), Type::getInt8Ty(*Context), false);
|
||||
Value *Val = B.CreateIntCast(CI->getOperand(2), Type::getInt8Ty(*Context),
|
||||
false);
|
||||
EmitMemSet(CI->getOperand(1), Val, CI->getOperand(3), B);
|
||||
return CI->getOperand(1);
|
||||
}
|
||||
@@ -1075,10 +1089,12 @@ struct Exp2Opt : public LibCallOptimization {
|
||||
Value *LdExpArg = 0;
|
||||
if (SIToFPInst *OpC = dyn_cast<SIToFPInst>(Op)) {
|
||||
if (OpC->getOperand(0)->getType()->getPrimitiveSizeInBits() <= 32)
|
||||
LdExpArg = B.CreateSExt(OpC->getOperand(0), Type::getInt32Ty(*Context), "tmp");
|
||||
LdExpArg = B.CreateSExt(OpC->getOperand(0),
|
||||
Type::getInt32Ty(*Context), "tmp");
|
||||
} else if (UIToFPInst *OpC = dyn_cast<UIToFPInst>(Op)) {
|
||||
if (OpC->getOperand(0)->getType()->getPrimitiveSizeInBits() < 32)
|
||||
LdExpArg = B.CreateZExt(OpC->getOperand(0), Type::getInt32Ty(*Context), "tmp");
|
||||
LdExpArg = B.CreateZExt(OpC->getOperand(0),
|
||||
Type::getInt32Ty(*Context), "tmp");
|
||||
}
|
||||
|
||||
if (LdExpArg) {
|
||||
@@ -1096,7 +1112,8 @@ struct Exp2Opt : public LibCallOptimization {
|
||||
|
||||
Module *M = Caller->getParent();
|
||||
Value *Callee = M->getOrInsertFunction(Name, Op->getType(),
|
||||
Op->getType(), Type::getInt32Ty(*Context),NULL);
|
||||
Op->getType(),
|
||||
Type::getInt32Ty(*Context),NULL);
|
||||
CallInst *CI = B.CreateCall2(Callee, One, LdExpArg);
|
||||
if (const Function *F = dyn_cast<Function>(Callee->stripPointerCasts()))
|
||||
CI->setCallingConv(F->getCallingConv());
|
||||
@@ -1142,7 +1159,8 @@ struct FFSOpt : public LibCallOptimization {
|
||||
const FunctionType *FT = Callee->getFunctionType();
|
||||
// Just make sure this has 2 arguments of the same FP type, which match the
|
||||
// result type.
|
||||
if (FT->getNumParams() != 1 || FT->getReturnType() != Type::getInt32Ty(*Context) ||
|
||||
if (FT->getNumParams() != 1 ||
|
||||
FT->getReturnType() != Type::getInt32Ty(*Context) ||
|
||||
!isa<IntegerType>(FT->getParamType(0)))
|
||||
return 0;
|
||||
|
||||
@@ -1165,7 +1183,8 @@ struct FFSOpt : public LibCallOptimization {
|
||||
V = B.CreateIntCast(V, Type::getInt32Ty(*Context), false, "tmp");
|
||||
|
||||
Value *Cond = B.CreateICmpNE(Op, Constant::getNullValue(ArgType), "tmp");
|
||||
return B.CreateSelect(Cond, V, ConstantInt::get(Type::getInt32Ty(*Context), 0));
|
||||
return B.CreateSelect(Cond, V,
|
||||
ConstantInt::get(Type::getInt32Ty(*Context), 0));
|
||||
}
|
||||
};
|
||||
|
||||
@@ -1358,10 +1377,12 @@ struct SPrintFOpt : public LibCallOptimization {
|
||||
if (FormatStr[1] == 'c') {
|
||||
// sprintf(dst, "%c", chr) --> *(i8*)dst = chr; *((i8*)dst+1) = 0
|
||||
if (!isa<IntegerType>(CI->getOperand(3)->getType())) return 0;
|
||||
Value *V = B.CreateTrunc(CI->getOperand(3), Type::getInt8Ty(*Context), "char");
|
||||
Value *V = B.CreateTrunc(CI->getOperand(3),
|
||||
Type::getInt8Ty(*Context), "char");
|
||||
Value *Ptr = CastToCStr(CI->getOperand(1), B);
|
||||
B.CreateStore(V, Ptr);
|
||||
Ptr = B.CreateGEP(Ptr, ConstantInt::get(Type::getInt32Ty(*Context), 1), "nul");
|
||||
Ptr = B.CreateGEP(Ptr, ConstantInt::get(Type::getInt32Ty(*Context), 1),
|
||||
"nul");
|
||||
B.CreateStore(Constant::getNullValue(Type::getInt8Ty(*Context)), Ptr);
|
||||
|
||||
return ConstantInt::get(CI->getType(), 1);
|
||||
|
Reference in New Issue
Block a user