Cleanup usage of long long; replace with PY_LONG_LONG.

For address, use PyLong_AsVoidPtr.
This commit is contained in:
Siu Kwan Lam 2013-01-17 13:16:48 -06:00
commit 2d3889111b

View file

@ -88,12 +88,12 @@ template <> PyObject* pycap_new<LLVMByteOrdering>(LLVMByteOrdering i)
return PyLong_FromLong(static_cast<unsigned long>(i)); return PyLong_FromLong(static_cast<unsigned long>(i));
} }
template <> PyObject* pycap_new<unsigned long long>(unsigned long long ull) template <> PyObject* pycap_new<unsigned PY_LONG_LONG>(unsigned PY_LONG_LONG ull)
{ {
return PyLong_FromUnsignedLongLong(ull); return PyLong_FromUnsignedLongLong(ull);
} }
template <> PyObject* pycap_new<long long>(long long ll) template <> PyObject* pycap_new<PY_LONG_LONG>(PY_LONG_LONG ll)
{ {
return PyLong_FromLongLong(ll); return PyLong_FromLongLong(ll);
} }
@ -483,7 +483,7 @@ _wLLVMConstInt(PyObject *self, PyObject *args)
{ {
LLVMPY_TRY LLVMPY_TRY
PyObject *obj; PyObject *obj;
unsigned long long n; unsigned PY_LONG_LONG n;
int sign_extend; int sign_extend;
if (!PyArg_ParseTuple(args, "OKi", &obj, &n, &sign_extend)) if (!PyArg_ParseTuple(args, "OKi", &obj, &n, &sign_extend))
@ -1352,16 +1352,19 @@ _wLLVMAddGlobalMapping(PyObject *self, PyObject *args)
LLVMPY_TRY LLVMPY_TRY
PyObject *obj_ee; PyObject *obj_ee;
PyObject *obj_val; PyObject *obj_val;
unsigned PY_LONG_LONG address; PyObject *obj_long;
assert(sizeof(address) >= sizeof(void*)); void* address;
if (!PyArg_ParseTuple(args, "OOK", &obj_ee, &obj_val, &address)) if (!PyArg_ParseTuple(args, "OOO", &obj_ee, &obj_val, &obj_long))
return NULL; return NULL;
address = PyLong_AsVoidPtr(obj_long);
if (PyErr_Occurred()) return NULL;
const LLVMExecutionEngineRef ee = pycap_get<LLVMExecutionEngineRef>( obj_ee ); const LLVMExecutionEngineRef ee = pycap_get<LLVMExecutionEngineRef>( obj_ee );
const LLVMValueRef val = pycap_get<LLVMValueRef>( obj_val ); const LLVMValueRef val = pycap_get<LLVMValueRef>( obj_val );
LLVMAddGlobalMapping(ee, val, (void*) address); LLVMAddGlobalMapping(ee, val, address);
Py_RETURN_NONE; Py_RETURN_NONE;
@ -1430,11 +1433,11 @@ _wLLVMCreateGenericValueOfInt(PyObject *self, PyObject *args)
{ {
LLVMPY_TRY LLVMPY_TRY
PyObject *obj1; PyObject *obj1;
unsigned long long n; unsigned PY_LONG_LONG n;
int is_signed; int is_signed;
LLVMGenericValueRef gv; LLVMGenericValueRef gv;
if (!PyArg_ParseTuple(args, "OLi", &obj1, &n, &is_signed)) if (!PyArg_ParseTuple(args, "OKi", &obj1, &n, &is_signed))
return NULL; return NULL;
const LLVMTypeRef ty = pycap_get<LLVMTypeRef>( obj1 ) ; const LLVMTypeRef ty = pycap_get<LLVMTypeRef>( obj1 ) ;
@ -1468,10 +1471,10 @@ _wLLVMCreateGenericValueOfPointer(PyObject *self, PyObject *args)
LLVMPY_TRY LLVMPY_TRY
// PyObject *obj1; // PyObject *obj1;
// LLVMTypeRef ty; //unused? // LLVMTypeRef ty; //unused?
unsigned long long n_; unsigned PY_LONG_LONG n_;
size_t n; size_t n;
if (!PyArg_ParseTuple(args, "L", &n_)) if (!PyArg_ParseTuple(args, "K", &n_))
return NULL; return NULL;
n=n_; n=n_;
@ -1487,7 +1490,7 @@ _wLLVMGenericValueToInt(PyObject *self, PyObject *args)
LLVMPY_TRY LLVMPY_TRY
PyObject *obj1; PyObject *obj1;
int is_signed; int is_signed;
unsigned long long val; unsigned PY_LONG_LONG val;
if (!PyArg_ParseTuple(args, "Oi", &obj1, &is_signed)) if (!PyArg_ParseTuple(args, "Oi", &obj1, &is_signed))
return NULL; return NULL;
@ -1496,7 +1499,7 @@ _wLLVMGenericValueToInt(PyObject *self, PyObject *args)
val = LLVMGenericValueToInt(gv, is_signed); val = LLVMGenericValueToInt(gv, is_signed);
return is_signed ? return is_signed ?
PyLong_FromLongLong((long long)val) : PyLong_FromLongLong((PY_LONG_LONG)val) :
PyLong_FromUnsignedLongLong(val); PyLong_FromUnsignedLongLong(val);
LLVMPY_CATCH_ALL LLVMPY_CATCH_ALL
} }