OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. | 2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. |
3 * Use of this source code is governed by a BSD-style license that can be | 3 * Use of this source code is governed by a BSD-style license that can be |
4 * found in the LICENSE file. | 4 * found in the LICENSE file. |
5 */ | 5 */ |
6 | 6 |
7 %%{ | 7 %%{ |
8 machine prefix_actions; | 8 machine prefix_actions; |
9 | 9 |
10 action branch_not_taken { | 10 action branch_not_taken { |
(...skipping 867 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
878 action rel8_operand_end { } | 878 action rel8_operand_end { } |
879 action rel16_operand_begin { } | 879 action rel16_operand_begin { } |
880 action rel16_operand_end { } | 880 action rel16_operand_end { } |
881 action rel32_operand_begin { } | 881 action rel32_operand_begin { } |
882 action rel32_operand_end { } | 882 action rel32_operand_end { } |
883 | 883 |
884 rel8 = any >rel8_operand_begin @rel8_operand_end; | 884 rel8 = any >rel8_operand_begin @rel8_operand_end; |
885 rel16 = any{2} @~rel16_operand_begin @rel16_operand_end; | 885 rel16 = any{2} @~rel16_operand_begin @rel16_operand_end; |
886 rel32 = any{4} @~rel32_operand_begin @rel32_operand_end; | 886 rel32 = any{4} @~rel32_operand_begin @rel32_operand_end; |
887 }%% | 887 }%% |
| 888 |
| 889 %%{ |
| 890 machine decoder; |
| 891 |
| 892 decoder = (one_instruction |
| 893 @{ |
| 894 process_instruction(instruction_start, current_position+1, &instruction, |
| 895 userdata); |
| 896 instruction_start = current_position + 1; |
| 897 SET_DISP_TYPE(DISPNONE); |
| 898 SET_IMM_TYPE(IMMNONE); |
| 899 SET_IMM2_TYPE(IMMNONE); |
| 900 SET_DATA16_PREFIX(FALSE); |
| 901 SET_LOCK_PREFIX(FALSE); |
| 902 SET_REPNZ_PREFIX(FALSE); |
| 903 SET_REPZ_PREFIX(FALSE); |
| 904 SET_BRANCH_NOT_TAKEN(FALSE); |
| 905 SET_BRANCH_TAKEN(FALSE); |
| 906 SET_VEX_PREFIX3(0x00); |
| 907 })* |
| 908 $!{ process_error(current_position, userdata); |
| 909 result = FALSE; |
| 910 goto error_detected; |
| 911 }; |
| 912 %%} |
OLD | NEW |