Skip to content

Instantly share code, notes, and snippets.

@regehr
Created January 27, 2020 18:24
Show Gist options
  • Save regehr/c66e2c14299a8761ebf8635712cf769f to your computer and use it in GitHub Desktop.
Save regehr/c66e2c14299a8761ebf8635712cf769f to your computer and use it in GitHub Desktop.
; result 1:
%0:i8 = var ; 0
; result 2:
%0:i8 = var ; 0
%1:i8 = add 255:i8, %0
%2:i8 = add 1:i8, %1
; result 3:
%0:i8 = var ; 0
%1:i8 = xor 128:i8, %0
%2:i8 = add 128:i8, %1
; result 4:
%0:i8 = var ; 0
%1:i8 = add %0, %0
%2:i8 = sub %1, %0
; result 5:
%0:i8 = var ; 0
%1:i8 = mul 2:i8, %0
%2:i8 = sub %1, %0
; result 6:
%0:i8 = var ; 0
%1:i8 = shl %0, 1:i8
%2:i8 = sub %1, %0
; result 7:
%0:i8 = var ; 0
%1:i8 = sub 0:i8, %0
%2:i8 = sub 0:i8, %1
; result 8:
%0:i8 = var ; 0
%1:i8 = mul 255:i8, %0
%2:i8 = sub 0:i8, %1
; result 9:
%0:i8 = var ; 0
%1:i8 = xor 255:i8, %0
%2:i8 = sub 255:i8, %1
; result 10:
%0:i8 = var ; 0
%1:i8 = fshl %0, 0:i8, 1:i8
%2:i8 = sub %1, %0
; result 11:
%0:i8 = var ; 0
%1:i8 = fshr %0, 12:i8, 7:i8
%2:i8 = sub %1, %0
; result 12:
%0:i8 = var ; 0
%1:i8 = ssub.sat 255:i8, %0
%2:i8 = sub 255:i8, %1
; result 13:
%0:i8 = var ; 0
%1:i8 = usub.sat 255:i8, %0
%2:i8 = sub 255:i8, %1
; result 14:
%0:i8 = var ; 0
%1:i8 = sub 0:i8, %0
%2:i8 = mul 255:i8, %1
; result 15:
%0:i8 = var ; 0
%1:i8 = mul 3:i8, %0
%2:i8 = mul 171:i8, %1
; result 16:
%0:i8 = var ; 0
%1:i8 = or 128:i8, %0
%2:i8 = and %0, %1
; result 17:
%0:i8 = var ; 0
%1:i8 = and 128:i8, %0
%2:i8 = or %0, %1
; result 18:
%0:i8 = var ; 0
%1:i8 = uadd.sat 224:i8, %0
%2:i8 = and %0, %1
; result 19:
%0:i8 = var ; 0
%1:i8 = fshl 255:i8, 254:i8, %0
%2:i8 = and %0, %1
; result 20:
%0:i8 = var ; 0
%1:i8 = fshr 127:i8, 250:i8, %0
%2:i8 = and %0, %1
; result 21:
%0:i8 = var ; 0
%1:i8 = usub.sat %0, 240:i8
%2:i8 = or %0, %1
; result 22:
%0:i8 = var ; 0
%1:i8 = urem %0, 64:i8
%2:i8 = or %0, %1
; result 23:
%0:i8 = var ; 0
%1:i8 = srem %0, 128:i8
%2:i8 = or %0, %1
; result 24:
%0:i8 = var ; 0
%1:i8 = add 128:i8, %0
%2:i8 = xor 128:i8, %1
; result 25:
%0:i8 = var ; 0
%1:i8 = sub 255:i8, %0
%2:i8 = xor 255:i8, %1
; result 26:
%0:i8 = var ; 0
%1:i8 = xor 255:i8, %0
%2:i8 = xor 255:i8, %1
; result 27:
%0:i8 = var ; 0
%1:i8 = ssub.sat 255:i8, %0
%2:i8 = xor 255:i8, %1
; result 28:
%0:i8 = var ; 0
%1:i8 = usub.sat 255:i8, %0
%2:i8 = xor 255:i8, %1
; result 29:
%0:i8 = var ; 0
%1:i8 = usub.sat 1:i8, %0
%2:i8 = shl %0, %1
; result 30:
%0:i8 = var ; 0
%1:i8 = usub.sat %0, 254:i8
%2:i8 = ashr %0, %1
; result 31:
%0:i8 = var ; 0
%1:i8 = usub.sat 1:i8, %0
%2:i8 = ashr %0, %1
; result 32:
%0:i8 = var ; 0
%1:i8 = usub.sat 1:i8, %0
%2:i8 = lshr %0, %1
; result 33:
%0:i8 = var ; 0
%1:i8 = usub.sat %0, 254:i8
%2:i8 = uadd.sat %0, %1
; result 34:
%0:i8 = var ; 0
%1:i8 = sub 255:i8, %0
%2:i8 = ssub.sat 255:i8, %1
; result 35:
%0:i8 = var ; 0
%1:i8 = xor 255:i8, %0
%2:i8 = ssub.sat 255:i8, %1
; result 36:
%0:i8 = var ; 0
%1:i8 = ssub.sat 255:i8, %0
%2:i8 = ssub.sat 255:i8, %1
; result 37:
%0:i8 = var ; 0
%1:i8 = usub.sat 255:i8, %0
%2:i8 = ssub.sat 255:i8, %1
; result 38:
%0:i8 = var ; 0
%1:i8 = usub.sat 1:i8, %0
%2:i8 = usub.sat %0, %1
; result 39:
%0:i8 = var ; 0
%1:i8 = sdiv %0, 128:i8
%2:i8 = ssub.sat %0, %1
; result 40:
%0:i8 = var ; 0
%1:i8 = sub 255:i8, %0
%2:i8 = usub.sat 255:i8, %1
; result 41:
%0:i8 = var ; 0
%1:i8 = xor 255:i8, %0
%2:i8 = usub.sat 255:i8, %1
; result 42:
%0:i8 = var ; 0
%1:i1 = ne 0:i8, %0
%2:i8 = select %1, %0, 0:i8
; result 43:
%0:i8 = var ; 0
%1:i1 = eq 0:i8, %0
%2:i8 = select %1, 0:i8, %0
; result 44:
%0:i8 = var ; 0
%1:i8 = mul 64:i8, %0
%2:i8 = fshl %0, %0, %1
; result 45:
%0:i8 = var ; 0
%1:i8 = and 128:i8, %0
%2:i8 = fshl %0, %0, %1
; result 46:
%0:i8 = var ; 0
%1:i8 = shl %0, 4:i8
%2:i8 = fshl %0, %0, %1
; result 47:
%0:i8 = var ; 0
%1:i8 = mul 128:i8, %0
%2:i8 = fshl %0, 0:i8, %1
; result 48:
%0:i8 = var ; 0
%1:i8 = and 128:i8, %0
%2:i8 = fshl %0, 0:i8, %1
; result 49:
%0:i8 = var ; 0
%1:i8 = shl %0, 4:i8
%2:i8 = fshl %0, 0:i8, %1
; result 50:
%0:i8 = var ; 0
%1:i8 = ssub.sat 255:i8, %0
%2:i8 = usub.sat 255:i8, %1
; result 51:
%0:i8 = var ; 0
%1:i8 = usub.sat 255:i8, %0
%2:i8 = usub.sat 255:i8, %1
; result 52:
%0:i8 = var ; 0
%1:i8 = usub.sat %0, 254:i8
%2:i8 = fshl %0, %0, %1
; result 53:
%0:i8 = var ; 0
%1:i8 = usub.sat 1:i8, %0
%2:i8 = fshl %0, %0, %1
; result 54:
%0:i8 = var ; 0
%1:i8 = fshl %0, 0:i8, 4:i8
%2:i8 = fshl %0, %0, %1
; result 55:
%0:i8 = var ; 0
%1:i8 = fshl 32:i8, 1:i8, %0
%2:i8 = fshl %0, %0, %1
; result 56:
%0:i8 = var ; 0
%1:i8 = fshr %0, 0:i8, 4:i8
%2:i8 = fshl %0, %0, %1
; result 57:
%0:i8 = var ; 0
%1:i8 = usub.sat %0, 254:i8
%2:i8 = fshl %0, 128:i8, %1
; result 58:
%0:i8 = var ; 0
%1:i8 = usub.sat 1:i8, %0
%2:i8 = fshl %0, 0:i8, %1
; result 59:
%0:i8 = var ; 0
%1:i8 = fshl %0, 0:i8, 4:i8
%2:i8 = fshl %0, 0:i8, %1
; result 60:
%0:i8 = var ; 0
%1:i8 = fshl 128:i8, 1:i8, %0
%2:i8 = fshl %0, 0:i8, %1
; result 61:
%0:i8 = var ; 0
%1:i8 = fshr %0, 0:i8, 4:i8
%2:i8 = fshl %0, 0:i8, %1
; result 62:
%0:i8 = var ; 0
%1:i8 = mul 16:i8, %0
%2:i8 = fshr %0, %0, %1
; result 63:
%0:i8 = var ; 0
%1:i8 = and 128:i8, %0
%2:i8 = fshr %0, %0, %1
; result 64:
%0:i8 = var ; 0
%1:i8 = shl %0, 4:i8
%2:i8 = fshr %0, %0, %1
; result 65:
%0:i8 = var ; 0
%1:i8 = usub.sat %0, 254:i8
%2:i8 = fshr %0, %0, %1
; result 66:
%0:i8 = var ; 0
%1:i8 = usub.sat 1:i8, %0
%2:i8 = fshr %0, %0, %1
; result 67:
%0:i8 = var ; 0
%1:i8 = fshl %0, 0:i8, 4:i8
%2:i8 = fshr %0, %0, %1
; result 68:
%0:i8 = var ; 0
%1:i8 = fshl 128:i8, 1:i8, %0
%2:i8 = fshr %0, %0, %1
; result 69:
%0:i8 = var ; 0
%1:i8 = fshr %0, 0:i8, 4:i8
%2:i8 = fshr %0, %0, %1
; result 70:
%0:i8 = var ; 0
%1:i8 = mul 128:i8, %0
%2:i8 = fshr 0:i8, %0, %1
; result 71:
%0:i8 = var ; 0
%1:i8 = and 128:i8, %0
%2:i8 = fshr 0:i8, %0, %1
; result 72:
%0:i8 = var ; 0
%1:i8 = shl %0, 4:i8
%2:i8 = fshr 0:i8, %0, %1
; result 73:
%0:i8 = var ; 0
%1:i8 = usub.sat %0, 254:i8
%2:i8 = fshr 1:i8, %0, %1
; result 74:
%0:i8 = var ; 0
%1:i8 = usub.sat 1:i8, %0
%2:i8 = fshr 0:i8, %0, %1
; result 75:
%0:i8 = var ; 0
%1:i8 = fshl %0, 0:i8, 4:i8
%2:i8 = fshr 0:i8, %0, %1
; result 76:
%0:i8 = var ; 0
%1:i8 = fshl 128:i8, 1:i8, %0
%2:i8 = fshr 0:i8, %0, %1
; result 77:
%0:i8 = var ; 0
%1:i8 = fshr %0, 0:i8, 4:i8
%2:i8 = fshr 0:i8, %0, %1
; RHS inferred successfully
result %0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment