Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(107)

Unified Diff: src/trusted/validator_arm/gen/arm32_decode.cc

Issue 12223046: Use generated actual decoders for ARM table: (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client/
Patch Set: Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/trusted/validator_arm/gen/arm32_decode.cc
===================================================================
--- src/trusted/validator_arm/gen/arm32_decode.cc (revision 10736)
+++ src/trusted/validator_arm/gen/arm32_decode.cc (working copy)
@@ -24,11 +24,14 @@
, Actual_BKPT_cccc00010010iiiiiiiiiiii0111iiii_case_1_instance_()
, Actual_BLX_immediate_1111101hiiiiiiiiiiiiiiiiiiiiiiii_case_1_instance_()
, Actual_BLX_register_cccc000100101111111111110011mmmm_case_1_instance_()
+ , Actual_BL_BLX_immediate_cccc1011iiiiiiiiiiiiiiiiiiiiiiii_case_1_instance_()
+ , Actual_B_cccc1010iiiiiiiiiiiiiiiiiiiiiiii_case_1_instance_()
, Actual_Bx_cccc000100101111111111110001mmmm_case_1_instance_()
, Actual_CLZ_cccc000101101111dddd11110001mmmm_case_1_instance_()
, Actual_CMN_immediate_cccc00110111nnnn0000iiiiiiiiiiii_case_1_instance_()
, Actual_CMN_register_cccc00010111nnnn0000iiiiitt0mmmm_case_1_instance_()
, Actual_CMN_register_shifted_register_cccc00010111nnnn0000ssss0tt1mmmm_case_1_instance_()
+ , Actual_LDMDA_LDMFA_cccc100000w1nnnnrrrrrrrrrrrrrrrr_case_1_instance_()
, Actual_LDRD_immediate_cccc000pu1w0nnnnttttiiii1101iiii_case_1_instance_()
, Actual_LDRD_literal_cccc0001u1001111ttttiiii1101iiii_case_1_instance_()
, Actual_LDRD_register_cccc000pu0w0nnnntttt00001101mmmm_case_1_instance_()
@@ -53,6 +56,7 @@
, Actual_SMLAL_A1_cccc0000111shhhhllllmmmm1001nnnn_case_1_instance_()
, Actual_SMULBB_SMULBT_SMULTB_SMULTT_cccc00010110dddd0000mmmm1xx0nnnn_case_1_instance_()
, Actual_SMULL_A1_cccc0000110shhhhllllmmmm1001nnnn_case_1_instance_()
+ , Actual_STMDA_STMED_cccc100000w0nnnnrrrrrrrrrrrrrrrr_case_1_instance_()
, Actual_STRD_immediate_cccc000pu1w0nnnnttttiiii1111iiii_case_1_instance_()
, Actual_STRD_register_cccc000pu0w0nnnntttt00001111mmmm_case_1_instance_()
, Actual_STREXB_cccc00011100nnnndddd11111001tttt_case_1_instance_()
@@ -69,7 +73,6 @@
, Binary4RegisterDualOp_instance_()
, Binary4RegisterDualOpNoCondsUpdate_instance_()
, Binary4RegisterDualResultNoCondsUpdate_instance_()
- , BranchImmediate24_instance_()
, CondVfpOp_instance_()
, DataBarrier_instance_()
, Deprecated_instance_()
@@ -80,7 +83,6 @@
, LdrImmediateOp_instance_()
, Load2RegisterImm12Op_instance_()
, Load3RegisterImm5Op_instance_()
- , LoadRegisterList_instance_()
, LoadVectorRegister_instance_()
, LoadVectorRegisterList_instance_()
, MoveDoubleVfpRegisterOp_instance_()
@@ -91,7 +93,6 @@
, PreloadRegisterPairOp_instance_()
, Store2RegisterImm12Op_instance_()
, Store3RegisterImm5Op_instance_()
- , StoreRegisterList_instance_()
, StoreVectorRegister_instance_()
, StoreVectorRegisterList_instance_()
, Unary1RegisterBitRangeMsbGeLsb_instance_()
@@ -495,12 +496,12 @@
UNREFERENCED_PARAMETER(inst);
if ((inst.Bits() & 0x02500000) ==
0x00000000 /* op(25:20)=0xx0x0 */) {
- return StoreRegisterList_instance_;
+ return Actual_STMDA_STMED_cccc100000w0nnnnrrrrrrrrrrrrrrrr_case_1_instance_;
}
if ((inst.Bits() & 0x02500000) ==
0x00100000 /* op(25:20)=0xx0x1 */) {
- return LoadRegisterList_instance_;
+ return Actual_LDMDA_LDMFA_cccc100000w1nnnnrrrrrrrrrrrrrrrr_case_1_instance_;
}
if ((inst.Bits() & 0x02500000) ==
@@ -526,11 +527,16 @@
return ForbiddenCondDecoder_instance_;
}
- if ((inst.Bits() & 0x02000000) ==
- 0x02000000 /* op(25:20)=1xxxxx */) {
- return BranchImmediate24_instance_;
+ if ((inst.Bits() & 0x03000000) ==
+ 0x02000000 /* op(25:20)=10xxxx */) {
+ return Actual_B_cccc1010iiiiiiiiiiiiiiiiiiiiiiii_case_1_instance_;
}
+ if ((inst.Bits() & 0x03000000) ==
+ 0x03000000 /* op(25:20)=11xxxx */) {
+ return Actual_BL_BLX_immediate_cccc1011iiiiiiiiiiiiiiiiiiiiiiii_case_1_instance_;
+ }
+
// Catch any attempt to fall though ...
return not_implemented_;
}

Powered by Google App Engine
This is Rietveld 408576698