Rev 1428 | Rev 2160 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1428 | Rev 1430 | ||
---|---|---|---|
Line 879... | Line 879... | ||
879 | static void atom_op_shl(atom_exec_context *ctx, int *ptr, int arg) |
879 | static void atom_op_shl(atom_exec_context *ctx, int *ptr, int arg) |
880 | { |
880 | { |
881 | uint8_t attr = U8((*ptr)++), shift; |
881 | uint8_t attr = U8((*ptr)++), shift; |
882 | uint32_t saved, dst; |
882 | uint32_t saved, dst; |
883 | int dptr = *ptr; |
883 | int dptr = *ptr; |
884 | attr &= 0x38; |
- | |
885 | attr |= atom_def_dst[attr >> 3] << 6; |
- | |
886 | SDEBUG(" dst: "); |
884 | SDEBUG(" dst: "); |
887 | dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1); |
885 | dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1); |
888 | shift = atom_get_src(ctx, attr, ptr); |
886 | shift = atom_get_src(ctx, attr, ptr); |
889 | SDEBUG(" shift: %d\n", shift); |
887 | SDEBUG(" shift: %d\n", shift); |
890 | dst <<= shift; |
888 | dst <<= shift; |
Line 895... | Line 893... | ||
895 | static void atom_op_shr(atom_exec_context *ctx, int *ptr, int arg) |
893 | static void atom_op_shr(atom_exec_context *ctx, int *ptr, int arg) |
896 | { |
894 | { |
897 | uint8_t attr = U8((*ptr)++), shift; |
895 | uint8_t attr = U8((*ptr)++), shift; |
898 | uint32_t saved, dst; |
896 | uint32_t saved, dst; |
899 | int dptr = *ptr; |
897 | int dptr = *ptr; |
900 | attr &= 0x38; |
- | |
901 | attr |= atom_def_dst[attr >> 3] << 6; |
- | |
902 | SDEBUG(" dst: "); |
898 | SDEBUG(" dst: "); |
903 | dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1); |
899 | dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1); |
904 | shift = atom_get_src(ctx, attr, ptr); |
900 | shift = atom_get_src(ctx, attr, ptr); |
905 | SDEBUG(" shift: %d\n", shift); |
901 | SDEBUG(" shift: %d\n", shift); |
906 | dst >>= shift; |
902 | dst >>= shift; |