Making (useful subsets of) bytecode portable between targets