mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
Implement some more rand functions for em3d benchmark
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1291 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
02b5d1386e
commit
1b600144bd
@ -245,6 +245,21 @@ GenericValue lle_X_drand48(MethodType *M, const vector<GenericValue> &Args) {
|
||||
return GV;
|
||||
}
|
||||
|
||||
// long lrand48()
|
||||
GenericValue lle_X_lrand48(MethodType *M, const vector<GenericValue> &Args) {
|
||||
assert(Args.size() == 0);
|
||||
GenericValue GV;
|
||||
GV.IntVal = lrand48();
|
||||
return GV;
|
||||
}
|
||||
|
||||
// void srand48(long)
|
||||
GenericValue lle_X_srand48(MethodType *M, const vector<GenericValue> &Args) {
|
||||
assert(Args.size() == 1);
|
||||
srand48(Args[0].IntVal);
|
||||
return GenericValue();
|
||||
}
|
||||
|
||||
|
||||
// int printf(sbyte *, ...) - a very rough implementation to make output useful.
|
||||
GenericValue lle_X_printf(MethodType *M, const vector<GenericValue> &Args) {
|
||||
@ -338,6 +353,10 @@ void Interpreter::initializeExternalMethods() {
|
||||
FuncNames["lle_X_malloc"] = lle_X_malloc;
|
||||
FuncNames["lle_X_free"] = lle_X_free;
|
||||
FuncNames["lle_X_pow"] = lle_X_pow;
|
||||
FuncNames["lle_X_log"] = lle_X_log;
|
||||
FuncNames["lle_X_drand48"] = lle_X_drand48;
|
||||
FuncNames["lle_X_srand48"] = lle_X_srand48;
|
||||
FuncNames["lle_X_lrand48"] = lle_X_lrand48;
|
||||
FuncNames["lle_X_sqrt"] = lle_X_sqrt;
|
||||
FuncNames["lle_X_printf"] = lle_X_printf;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user