1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
#!/usr/bin/python -i
# Just some helper functions to convert PPC bits (in the docs) to integer
# values we can actually use in code.
def ppcbit(i):
return 1 << (63 - i)
def ppcmask(a,b):
mask = 0
for i in range(a, b + 1):
mask += ppcbit(i)
return mask
def ppcfield(a, b, v):
return (v & ppcmask(a,b)) >> (63 - b)
def ppcbit32(i):
return 1 << (31 - i)
def ppcmask32(a,b):
mask = 0
for i in range(a, b + 1):
mask += ppcbit32(i)
return mask
def ppcfield32(a, b, v):
return (v & ppcmask32(a,b)) >> (31 - b)
|