예제 #1
0
def ullong_floordiv_zer(x, y):
    '''#define OP_ULLONG_FLOORDIV_ZER(x,y,r) \
      if ((y)) { OP_ULLONG_FLOORDIV(x,y,r); } \
      else FAIL_ZER("unsigned integer division")
    '''
    if y:
        return llop.llong_floordiv(UnsignedLongLong, x, y)
    else:
        raise ZeroDivisionError("unsigned integer division")
예제 #2
0
파일: raisingops.py 프로젝트: Darriall/pypy
def ullong_floordiv_zer(x, y):
    '''#define OP_ULLONG_FLOORDIV_ZER(x,y,r) \
      if ((y)) { OP_ULLONG_FLOORDIV(x,y,r); } \
      else FAIL_ZER("unsigned integer division")
    '''
    if y:
        return llop.llong_floordiv(UnsignedLongLong, x, y)
    else:
        raise ZeroDivisionError("unsigned integer division")
예제 #3
0
파일: rint.py 프로젝트: mozillazg/pypy
 def ll_llong_py_div(x, y):
     r = llop.llong_floordiv(SignedLongLong, x, y)  # <= truncates like in C
     p = r * y
     if y < 0: u = p - x
     else:     u = x - p
     return r + (u >> LLONG_BITS_1)
예제 #4
0
파일: support.py 프로젝트: sota/pypy-old
def _ll_2_llong_floordiv_zer(xll, yll):
    if yll == 0:
        raise ZeroDivisionError
    return llop.llong_floordiv(lltype.SignedLongLong, xll, yll)
예제 #5
0
파일: support.py 프로젝트: sota/pypy-old
def _ll_2_llong_floordiv(xll, yll):
    return llop.llong_floordiv(lltype.SignedLongLong, xll, yll)
예제 #6
0
파일: support.py 프로젝트: Qointum/pypy
def _ll_2_llong_floordiv_zer(xll, yll):
    if yll == 0:
        raise ZeroDivisionError
    return llop.llong_floordiv(lltype.SignedLongLong, xll, yll)
예제 #7
0
파일: support.py 프로젝트: Qointum/pypy
def _ll_2_llong_floordiv(xll, yll):
    return llop.llong_floordiv(lltype.SignedLongLong, xll, yll)
예제 #8
0
 def ll_llong_py_div(x, y):
     r = llop.llong_floordiv(SignedLongLong, x, y)  # <= truncates like in C
     p = r * y
     if y < 0: u = p - x
     else: u = x - p
     return r + (u >> LLONG_BITS_1)