diff options
author | Andrew Waterman <waterman@cs.berkeley.edu> | 2013-04-24 21:23:54 -0700 |
---|---|---|
committer | Andrew Waterman <waterman@cs.berkeley.edu> | 2013-04-24 21:23:54 -0700 |
commit | 14cfc50a602a38e8d428f73526d8e6bcbdf59793 (patch) | |
tree | 26c08fda4ca3670957a6b584bbf689cad6ce1956 /riscv | |
parent | adb3e3df44f6a3288d957ec2a256eb2b2c02821f (diff) | |
download | riscv-isa-sim-14cfc50a602a38e8d428f73526d8e6bcbdf59793.zip riscv-isa-sim-14cfc50a602a38e8d428f73526d8e6bcbdf59793.tar.gz riscv-isa-sim-14cfc50a602a38e8d428f73526d8e6bcbdf59793.tar.bz2 |
fix(?) circular dependence on generated headers
Diffstat (limited to 'riscv')
-rw-r--r-- | riscv/dispatch.h | 505 | ||||
-rw-r--r-- | riscv/riscv.mk.in | 41 |
2 files changed, 19 insertions, 527 deletions
diff --git a/riscv/dispatch.h b/riscv/dispatch.h deleted file mode 100644 index 0f22113..0000000 --- a/riscv/dispatch.h +++ /dev/null @@ -1,505 +0,0 @@ -#define get_insn_func(insn, sr) \ - processor_t::dispatch_table[((((sr) & SR_S) ? (sr & SR_S64) : (SR_U64)) ? 1024 : 0) + ((insn).bits % 1024)] -static const insn_func_t dispatch_table[2048]; -reg_t insn_func_32_0(insn_t insn, reg_t reg); -reg_t insn_func_64_0(insn_t insn, reg_t reg); -reg_t insn_func_32_1(insn_t insn, reg_t reg); -reg_t insn_func_64_1(insn_t insn, reg_t reg); -reg_t insn_func_32_2(insn_t insn, reg_t reg); -reg_t insn_func_64_2(insn_t insn, reg_t reg); -reg_t insn_func_32_3(insn_t insn, reg_t reg); -reg_t insn_func_64_3(insn_t insn, reg_t reg); -reg_t insn_func_32_4(insn_t insn, reg_t reg); -reg_t insn_func_64_4(insn_t insn, reg_t reg); -reg_t insn_func_32_5(insn_t insn, reg_t reg); -reg_t insn_func_64_5(insn_t insn, reg_t reg); -reg_t insn_func_32_6(insn_t insn, reg_t reg); -reg_t insn_func_64_6(insn_t insn, reg_t reg); -reg_t insn_func_32_7(insn_t insn, reg_t reg); -reg_t insn_func_64_7(insn_t insn, reg_t reg); -reg_t insn_func_32_8(insn_t insn, reg_t reg); -reg_t insn_func_64_8(insn_t insn, reg_t reg); -reg_t insn_func_32_9(insn_t insn, reg_t reg); -reg_t insn_func_64_9(insn_t insn, reg_t reg); -reg_t insn_func_32_10(insn_t insn, reg_t reg); -reg_t insn_func_64_10(insn_t insn, reg_t reg); -reg_t insn_func_32_11(insn_t insn, reg_t reg); -reg_t insn_func_64_11(insn_t insn, reg_t reg); -reg_t insn_func_32_12(insn_t insn, reg_t reg); -reg_t insn_func_64_12(insn_t insn, reg_t reg); -reg_t insn_func_32_13(insn_t insn, reg_t reg); -reg_t insn_func_64_13(insn_t insn, reg_t reg); -reg_t insn_func_32_15(insn_t insn, reg_t reg); -reg_t insn_func_64_15(insn_t insn, reg_t reg); -reg_t insn_func_32_16(insn_t insn, reg_t reg); -reg_t insn_func_64_16(insn_t insn, reg_t reg); -reg_t insn_func_32_17(insn_t insn, reg_t reg); -reg_t insn_func_64_17(insn_t insn, reg_t reg); -reg_t insn_func_32_18(insn_t insn, reg_t reg); -reg_t insn_func_64_18(insn_t insn, reg_t reg); -reg_t insn_func_32_19(insn_t insn, reg_t reg); -reg_t insn_func_64_19(insn_t insn, reg_t reg); -reg_t insn_func_32_20(insn_t insn, reg_t reg); -reg_t insn_func_64_20(insn_t insn, reg_t reg); -reg_t insn_func_32_21(insn_t insn, reg_t reg); -reg_t insn_func_64_21(insn_t insn, reg_t reg); -reg_t insn_func_32_22(insn_t insn, reg_t reg); -reg_t insn_func_64_22(insn_t insn, reg_t reg); -reg_t insn_func_32_23(insn_t insn, reg_t reg); -reg_t insn_func_64_23(insn_t insn, reg_t reg); -reg_t insn_func_32_24(insn_t insn, reg_t reg); -reg_t insn_func_64_24(insn_t insn, reg_t reg); -reg_t insn_func_32_25(insn_t insn, reg_t reg); -reg_t insn_func_64_25(insn_t insn, reg_t reg); -reg_t insn_func_32_26(insn_t insn, reg_t reg); -reg_t insn_func_64_26(insn_t insn, reg_t reg); -reg_t insn_func_32_27(insn_t insn, reg_t reg); -reg_t insn_func_64_27(insn_t insn, reg_t reg); -reg_t insn_func_32_28(insn_t insn, reg_t reg); -reg_t insn_func_64_28(insn_t insn, reg_t reg); -reg_t insn_func_32_29(insn_t insn, reg_t reg); -reg_t insn_func_64_29(insn_t insn, reg_t reg); -reg_t insn_func_32_34(insn_t insn, reg_t reg); -reg_t insn_func_64_34(insn_t insn, reg_t reg); -reg_t insn_func_32_35(insn_t insn, reg_t reg); -reg_t insn_func_64_35(insn_t insn, reg_t reg); -reg_t insn_func_32_50(insn_t insn, reg_t reg); -reg_t insn_func_64_50(insn_t insn, reg_t reg); -reg_t insn_func_32_51(insn_t insn, reg_t reg); -reg_t insn_func_64_51(insn_t insn, reg_t reg); -reg_t insn_func_32_55(insn_t insn, reg_t reg); -reg_t insn_func_64_55(insn_t insn, reg_t reg); -reg_t insn_func_32_57(insn_t insn, reg_t reg); -reg_t insn_func_64_57(insn_t insn, reg_t reg); -reg_t insn_func_32_58(insn_t insn, reg_t reg); -reg_t insn_func_64_58(insn_t insn, reg_t reg); -reg_t insn_func_32_59(insn_t insn, reg_t reg); -reg_t insn_func_64_59(insn_t insn, reg_t reg); -reg_t insn_func_32_66(insn_t insn, reg_t reg); -reg_t insn_func_64_66(insn_t insn, reg_t reg); -reg_t insn_func_32_67(insn_t insn, reg_t reg); -reg_t insn_func_64_67(insn_t insn, reg_t reg); -reg_t insn_func_32_71(insn_t insn, reg_t reg); -reg_t insn_func_64_71(insn_t insn, reg_t reg); -reg_t insn_func_32_75(insn_t insn, reg_t reg); -reg_t insn_func_64_75(insn_t insn, reg_t reg); -reg_t insn_func_32_79(insn_t insn, reg_t reg); -reg_t insn_func_64_79(insn_t insn, reg_t reg); -reg_t insn_func_32_82(insn_t insn, reg_t reg); -reg_t insn_func_64_82(insn_t insn, reg_t reg); -reg_t insn_func_32_83(insn_t insn, reg_t reg); -reg_t insn_func_64_83(insn_t insn, reg_t reg); -reg_t insn_func_32_89(insn_t insn, reg_t reg); -reg_t insn_func_64_89(insn_t insn, reg_t reg); -reg_t insn_func_32_90(insn_t insn, reg_t reg); -reg_t insn_func_64_90(insn_t insn, reg_t reg); -reg_t insn_func_32_98(insn_t insn, reg_t reg); -reg_t insn_func_64_98(insn_t insn, reg_t reg); -reg_t insn_func_32_99(insn_t insn, reg_t reg); -reg_t insn_func_64_99(insn_t insn, reg_t reg); -reg_t insn_func_32_103(insn_t insn, reg_t reg); -reg_t insn_func_64_103(insn_t insn, reg_t reg); -reg_t insn_func_32_107(insn_t insn, reg_t reg); -reg_t insn_func_64_107(insn_t insn, reg_t reg); -reg_t insn_func_32_111(insn_t insn, reg_t reg); -reg_t insn_func_64_111(insn_t insn, reg_t reg); -reg_t insn_func_32_114(insn_t insn, reg_t reg); -reg_t insn_func_64_114(insn_t insn, reg_t reg); -reg_t insn_func_32_115(insn_t insn, reg_t reg); -reg_t insn_func_64_115(insn_t insn, reg_t reg); -reg_t insn_func_32_119(insn_t insn, reg_t reg); -reg_t insn_func_64_119(insn_t insn, reg_t reg); -reg_t insn_func_32_121(insn_t insn, reg_t reg); -reg_t insn_func_64_121(insn_t insn, reg_t reg); -reg_t insn_func_32_122(insn_t insn, reg_t reg); -reg_t insn_func_64_122(insn_t insn, reg_t reg); -reg_t insn_func_32_123(insn_t insn, reg_t reg); -reg_t insn_func_64_123(insn_t insn, reg_t reg); -reg_t insn_func_32_130(insn_t insn, reg_t reg); -reg_t insn_func_64_130(insn_t insn, reg_t reg); -reg_t insn_func_32_131(insn_t insn, reg_t reg); -reg_t insn_func_64_131(insn_t insn, reg_t reg); -reg_t insn_func_32_139(insn_t insn, reg_t reg); -reg_t insn_func_64_139(insn_t insn, reg_t reg); -reg_t insn_func_32_143(insn_t insn, reg_t reg); -reg_t insn_func_64_143(insn_t insn, reg_t reg); -reg_t insn_func_32_146(insn_t insn, reg_t reg); -reg_t insn_func_64_146(insn_t insn, reg_t reg); -reg_t insn_func_32_147(insn_t insn, reg_t reg); -reg_t insn_func_64_147(insn_t insn, reg_t reg); -reg_t insn_func_32_153(insn_t insn, reg_t reg); -reg_t insn_func_64_153(insn_t insn, reg_t reg); -reg_t insn_func_32_154(insn_t insn, reg_t reg); -reg_t insn_func_64_154(insn_t insn, reg_t reg); -reg_t insn_func_32_155(insn_t insn, reg_t reg); -reg_t insn_func_64_155(insn_t insn, reg_t reg); -reg_t insn_func_32_162(insn_t insn, reg_t reg); -reg_t insn_func_64_162(insn_t insn, reg_t reg); -reg_t insn_func_32_163(insn_t insn, reg_t reg); -reg_t insn_func_64_163(insn_t insn, reg_t reg); -reg_t insn_func_32_175(insn_t insn, reg_t reg); -reg_t insn_func_64_175(insn_t insn, reg_t reg); -reg_t insn_func_32_178(insn_t insn, reg_t reg); -reg_t insn_func_64_178(insn_t insn, reg_t reg); -reg_t insn_func_32_179(insn_t insn, reg_t reg); -reg_t insn_func_64_179(insn_t insn, reg_t reg); -reg_t insn_func_32_185(insn_t insn, reg_t reg); -reg_t insn_func_64_185(insn_t insn, reg_t reg); -reg_t insn_func_32_186(insn_t insn, reg_t reg); -reg_t insn_func_64_186(insn_t insn, reg_t reg); -reg_t insn_func_32_187(insn_t insn, reg_t reg); -reg_t insn_func_64_187(insn_t insn, reg_t reg); -reg_t insn_func_32_194(insn_t insn, reg_t reg); -reg_t insn_func_64_194(insn_t insn, reg_t reg); -reg_t insn_func_32_195(insn_t insn, reg_t reg); -reg_t insn_func_64_195(insn_t insn, reg_t reg); -reg_t insn_func_32_199(insn_t insn, reg_t reg); -reg_t insn_func_64_199(insn_t insn, reg_t reg); -reg_t insn_func_32_203(insn_t insn, reg_t reg); -reg_t insn_func_64_203(insn_t insn, reg_t reg); -reg_t insn_func_32_207(insn_t insn, reg_t reg); -reg_t insn_func_64_207(insn_t insn, reg_t reg); -reg_t insn_func_32_210(insn_t insn, reg_t reg); -reg_t insn_func_64_210(insn_t insn, reg_t reg); -reg_t insn_func_32_211(insn_t insn, reg_t reg); -reg_t insn_func_64_211(insn_t insn, reg_t reg); -reg_t insn_func_32_217(insn_t insn, reg_t reg); -reg_t insn_func_64_217(insn_t insn, reg_t reg); -reg_t insn_func_32_218(insn_t insn, reg_t reg); -reg_t insn_func_64_218(insn_t insn, reg_t reg); -reg_t insn_func_32_226(insn_t insn, reg_t reg); -reg_t insn_func_64_226(insn_t insn, reg_t reg); -reg_t insn_func_32_227(insn_t insn, reg_t reg); -reg_t insn_func_64_227(insn_t insn, reg_t reg); -reg_t insn_func_32_235(insn_t insn, reg_t reg); -reg_t insn_func_64_235(insn_t insn, reg_t reg); -reg_t insn_func_32_242(insn_t insn, reg_t reg); -reg_t insn_func_64_242(insn_t insn, reg_t reg); -reg_t insn_func_32_243(insn_t insn, reg_t reg); -reg_t insn_func_64_243(insn_t insn, reg_t reg); -reg_t insn_func_32_247(insn_t insn, reg_t reg); -reg_t insn_func_64_247(insn_t insn, reg_t reg); -reg_t insn_func_32_249(insn_t insn, reg_t reg); -reg_t insn_func_64_249(insn_t insn, reg_t reg); -reg_t insn_func_32_250(insn_t insn, reg_t reg); -reg_t insn_func_64_250(insn_t insn, reg_t reg); -reg_t insn_func_32_251(insn_t insn, reg_t reg); -reg_t insn_func_64_251(insn_t insn, reg_t reg); -reg_t insn_func_32_258(insn_t insn, reg_t reg); -reg_t insn_func_64_258(insn_t insn, reg_t reg); -reg_t insn_func_32_259(insn_t insn, reg_t reg); -reg_t insn_func_64_259(insn_t insn, reg_t reg); -reg_t insn_func_32_263(insn_t insn, reg_t reg); -reg_t insn_func_64_263(insn_t insn, reg_t reg); -reg_t insn_func_32_267(insn_t insn, reg_t reg); -reg_t insn_func_64_267(insn_t insn, reg_t reg); -reg_t insn_func_32_271(insn_t insn, reg_t reg); -reg_t insn_func_64_271(insn_t insn, reg_t reg); -reg_t insn_func_32_274(insn_t insn, reg_t reg); -reg_t insn_func_64_274(insn_t insn, reg_t reg); -reg_t insn_func_32_275(insn_t insn, reg_t reg); -reg_t insn_func_64_275(insn_t insn, reg_t reg); -reg_t insn_func_32_281(insn_t insn, reg_t reg); -reg_t insn_func_64_281(insn_t insn, reg_t reg); -reg_t insn_func_32_282(insn_t insn, reg_t reg); -reg_t insn_func_64_282(insn_t insn, reg_t reg); -reg_t insn_func_32_284(insn_t insn, reg_t reg); -reg_t insn_func_64_284(insn_t insn, reg_t reg); -reg_t insn_func_32_290(insn_t insn, reg_t reg); -reg_t insn_func_64_290(insn_t insn, reg_t reg); -reg_t insn_func_32_291(insn_t insn, reg_t reg); -reg_t insn_func_64_291(insn_t insn, reg_t reg); -reg_t insn_func_32_295(insn_t insn, reg_t reg); -reg_t insn_func_64_295(insn_t insn, reg_t reg); -reg_t insn_func_32_299(insn_t insn, reg_t reg); -reg_t insn_func_64_299(insn_t insn, reg_t reg); -reg_t insn_func_32_303(insn_t insn, reg_t reg); -reg_t insn_func_64_303(insn_t insn, reg_t reg); -reg_t insn_func_32_306(insn_t insn, reg_t reg); -reg_t insn_func_64_306(insn_t insn, reg_t reg); -reg_t insn_func_32_307(insn_t insn, reg_t reg); -reg_t insn_func_64_307(insn_t insn, reg_t reg); -reg_t insn_func_32_313(insn_t insn, reg_t reg); -reg_t insn_func_64_313(insn_t insn, reg_t reg); -reg_t insn_func_32_314(insn_t insn, reg_t reg); -reg_t insn_func_64_314(insn_t insn, reg_t reg); -reg_t insn_func_32_322(insn_t insn, reg_t reg); -reg_t insn_func_64_322(insn_t insn, reg_t reg); -reg_t insn_func_32_338(insn_t insn, reg_t reg); -reg_t insn_func_64_338(insn_t insn, reg_t reg); -reg_t insn_func_32_345(insn_t insn, reg_t reg); -reg_t insn_func_64_345(insn_t insn, reg_t reg); -reg_t insn_func_32_346(insn_t insn, reg_t reg); -reg_t insn_func_64_346(insn_t insn, reg_t reg); -reg_t insn_func_32_354(insn_t insn, reg_t reg); -reg_t insn_func_64_354(insn_t insn, reg_t reg); -reg_t insn_func_32_363(insn_t insn, reg_t reg); -reg_t insn_func_64_363(insn_t insn, reg_t reg); -reg_t insn_func_32_370(insn_t insn, reg_t reg); -reg_t insn_func_64_370(insn_t insn, reg_t reg); -reg_t insn_func_32_371(insn_t insn, reg_t reg); -reg_t insn_func_64_371(insn_t insn, reg_t reg); -reg_t insn_func_32_375(insn_t insn, reg_t reg); -reg_t insn_func_64_375(insn_t insn, reg_t reg); -reg_t insn_func_32_377(insn_t insn, reg_t reg); -reg_t insn_func_64_377(insn_t insn, reg_t reg); -reg_t insn_func_32_378(insn_t insn, reg_t reg); -reg_t insn_func_64_378(insn_t insn, reg_t reg); -reg_t insn_func_32_379(insn_t insn, reg_t reg); -reg_t insn_func_64_379(insn_t insn, reg_t reg); -reg_t insn_func_32_386(insn_t insn, reg_t reg); -reg_t insn_func_64_386(insn_t insn, reg_t reg); -reg_t insn_func_32_387(insn_t insn, reg_t reg); -reg_t insn_func_64_387(insn_t insn, reg_t reg); -reg_t insn_func_32_391(insn_t insn, reg_t reg); -reg_t insn_func_64_391(insn_t insn, reg_t reg); -reg_t insn_func_32_395(insn_t insn, reg_t reg); -reg_t insn_func_64_395(insn_t insn, reg_t reg); -reg_t insn_func_32_399(insn_t insn, reg_t reg); -reg_t insn_func_64_399(insn_t insn, reg_t reg); -reg_t insn_func_32_402(insn_t insn, reg_t reg); -reg_t insn_func_64_402(insn_t insn, reg_t reg); -reg_t insn_func_32_403(insn_t insn, reg_t reg); -reg_t insn_func_64_403(insn_t insn, reg_t reg); -reg_t insn_func_32_409(insn_t insn, reg_t reg); -reg_t insn_func_64_409(insn_t insn, reg_t reg); -reg_t insn_func_32_410(insn_t insn, reg_t reg); -reg_t insn_func_64_410(insn_t insn, reg_t reg); -reg_t insn_func_32_418(insn_t insn, reg_t reg); -reg_t insn_func_64_418(insn_t insn, reg_t reg); -reg_t insn_func_32_419(insn_t insn, reg_t reg); -reg_t insn_func_64_419(insn_t insn, reg_t reg); -reg_t insn_func_32_423(insn_t insn, reg_t reg); -reg_t insn_func_64_423(insn_t insn, reg_t reg); -reg_t insn_func_32_427(insn_t insn, reg_t reg); -reg_t insn_func_64_427(insn_t insn, reg_t reg); -reg_t insn_func_32_434(insn_t insn, reg_t reg); -reg_t insn_func_64_434(insn_t insn, reg_t reg); -reg_t insn_func_32_435(insn_t insn, reg_t reg); -reg_t insn_func_64_435(insn_t insn, reg_t reg); -reg_t insn_func_32_441(insn_t insn, reg_t reg); -reg_t insn_func_64_441(insn_t insn, reg_t reg); -reg_t insn_func_32_442(insn_t insn, reg_t reg); -reg_t insn_func_64_442(insn_t insn, reg_t reg); -reg_t insn_func_32_450(insn_t insn, reg_t reg); -reg_t insn_func_64_450(insn_t insn, reg_t reg); -reg_t insn_func_32_466(insn_t insn, reg_t reg); -reg_t insn_func_64_466(insn_t insn, reg_t reg); -reg_t insn_func_32_473(insn_t insn, reg_t reg); -reg_t insn_func_64_473(insn_t insn, reg_t reg); -reg_t insn_func_32_474(insn_t insn, reg_t reg); -reg_t insn_func_64_474(insn_t insn, reg_t reg); -reg_t insn_func_32_482(insn_t insn, reg_t reg); -reg_t insn_func_64_482(insn_t insn, reg_t reg); -reg_t insn_func_32_498(insn_t insn, reg_t reg); -reg_t insn_func_64_498(insn_t insn, reg_t reg); -reg_t insn_func_32_499(insn_t insn, reg_t reg); -reg_t insn_func_64_499(insn_t insn, reg_t reg); -reg_t insn_func_32_503(insn_t insn, reg_t reg); -reg_t insn_func_64_503(insn_t insn, reg_t reg); -reg_t insn_func_32_505(insn_t insn, reg_t reg); -reg_t insn_func_64_505(insn_t insn, reg_t reg); -reg_t insn_func_32_506(insn_t insn, reg_t reg); -reg_t insn_func_64_506(insn_t insn, reg_t reg); -reg_t insn_func_32_507(insn_t insn, reg_t reg); -reg_t insn_func_64_507(insn_t insn, reg_t reg); -reg_t insn_func_32_514(insn_t insn, reg_t reg); -reg_t insn_func_64_514(insn_t insn, reg_t reg); -reg_t insn_func_32_515(insn_t insn, reg_t reg); -reg_t insn_func_64_515(insn_t insn, reg_t reg); -reg_t insn_func_32_523(insn_t insn, reg_t reg); -reg_t insn_func_64_523(insn_t insn, reg_t reg); -reg_t insn_func_32_530(insn_t insn, reg_t reg); -reg_t insn_func_64_530(insn_t insn, reg_t reg); -reg_t insn_func_32_531(insn_t insn, reg_t reg); -reg_t insn_func_64_531(insn_t insn, reg_t reg); -reg_t insn_func_32_537(insn_t insn, reg_t reg); -reg_t insn_func_64_537(insn_t insn, reg_t reg); -reg_t insn_func_32_538(insn_t insn, reg_t reg); -reg_t insn_func_64_538(insn_t insn, reg_t reg); -reg_t insn_func_32_540(insn_t insn, reg_t reg); -reg_t insn_func_64_540(insn_t insn, reg_t reg); -reg_t insn_func_32_546(insn_t insn, reg_t reg); -reg_t insn_func_64_546(insn_t insn, reg_t reg); -reg_t insn_func_32_559(insn_t insn, reg_t reg); -reg_t insn_func_64_559(insn_t insn, reg_t reg); -reg_t insn_func_32_562(insn_t insn, reg_t reg); -reg_t insn_func_64_562(insn_t insn, reg_t reg); -reg_t insn_func_32_563(insn_t insn, reg_t reg); -reg_t insn_func_64_563(insn_t insn, reg_t reg); -reg_t insn_func_32_569(insn_t insn, reg_t reg); -reg_t insn_func_64_569(insn_t insn, reg_t reg); -reg_t insn_func_32_570(insn_t insn, reg_t reg); -reg_t insn_func_64_570(insn_t insn, reg_t reg); -reg_t insn_func_32_571(insn_t insn, reg_t reg); -reg_t insn_func_64_571(insn_t insn, reg_t reg); -reg_t insn_func_32_578(insn_t insn, reg_t reg); -reg_t insn_func_64_578(insn_t insn, reg_t reg); -reg_t insn_func_32_594(insn_t insn, reg_t reg); -reg_t insn_func_64_594(insn_t insn, reg_t reg); -reg_t insn_func_32_595(insn_t insn, reg_t reg); -reg_t insn_func_64_595(insn_t insn, reg_t reg); -reg_t insn_func_32_601(insn_t insn, reg_t reg); -reg_t insn_func_64_601(insn_t insn, reg_t reg); -reg_t insn_func_32_602(insn_t insn, reg_t reg); -reg_t insn_func_64_602(insn_t insn, reg_t reg); -reg_t insn_func_32_610(insn_t insn, reg_t reg); -reg_t insn_func_64_610(insn_t insn, reg_t reg); -reg_t insn_func_32_611(insn_t insn, reg_t reg); -reg_t insn_func_64_611(insn_t insn, reg_t reg); -reg_t insn_func_32_626(insn_t insn, reg_t reg); -reg_t insn_func_64_626(insn_t insn, reg_t reg); -reg_t insn_func_32_631(insn_t insn, reg_t reg); -reg_t insn_func_64_631(insn_t insn, reg_t reg); -reg_t insn_func_32_633(insn_t insn, reg_t reg); -reg_t insn_func_64_633(insn_t insn, reg_t reg); -reg_t insn_func_32_634(insn_t insn, reg_t reg); -reg_t insn_func_64_634(insn_t insn, reg_t reg); -reg_t insn_func_32_635(insn_t insn, reg_t reg); -reg_t insn_func_64_635(insn_t insn, reg_t reg); -reg_t insn_func_32_642(insn_t insn, reg_t reg); -reg_t insn_func_64_642(insn_t insn, reg_t reg); -reg_t insn_func_32_643(insn_t insn, reg_t reg); -reg_t insn_func_64_643(insn_t insn, reg_t reg); -reg_t insn_func_32_651(insn_t insn, reg_t reg); -reg_t insn_func_64_651(insn_t insn, reg_t reg); -reg_t insn_func_32_658(insn_t insn, reg_t reg); -reg_t insn_func_64_658(insn_t insn, reg_t reg); -reg_t insn_func_32_659(insn_t insn, reg_t reg); -reg_t insn_func_64_659(insn_t insn, reg_t reg); -reg_t insn_func_32_665(insn_t insn, reg_t reg); -reg_t insn_func_64_665(insn_t insn, reg_t reg); -reg_t insn_func_32_666(insn_t insn, reg_t reg); -reg_t insn_func_64_666(insn_t insn, reg_t reg); -reg_t insn_func_32_667(insn_t insn, reg_t reg); -reg_t insn_func_64_667(insn_t insn, reg_t reg); -reg_t insn_func_32_674(insn_t insn, reg_t reg); -reg_t insn_func_64_674(insn_t insn, reg_t reg); -reg_t insn_func_32_687(insn_t insn, reg_t reg); -reg_t insn_func_64_687(insn_t insn, reg_t reg); -reg_t insn_func_32_690(insn_t insn, reg_t reg); -reg_t insn_func_64_690(insn_t insn, reg_t reg); -reg_t insn_func_32_691(insn_t insn, reg_t reg); -reg_t insn_func_64_691(insn_t insn, reg_t reg); -reg_t insn_func_32_697(insn_t insn, reg_t reg); -reg_t insn_func_64_697(insn_t insn, reg_t reg); -reg_t insn_func_32_698(insn_t insn, reg_t reg); -reg_t insn_func_64_698(insn_t insn, reg_t reg); -reg_t insn_func_32_699(insn_t insn, reg_t reg); -reg_t insn_func_64_699(insn_t insn, reg_t reg); -reg_t insn_func_32_706(insn_t insn, reg_t reg); -reg_t insn_func_64_706(insn_t insn, reg_t reg); -reg_t insn_func_32_722(insn_t insn, reg_t reg); -reg_t insn_func_64_722(insn_t insn, reg_t reg); -reg_t insn_func_32_723(insn_t insn, reg_t reg); -reg_t insn_func_64_723(insn_t insn, reg_t reg); -reg_t insn_func_32_729(insn_t insn, reg_t reg); -reg_t insn_func_64_729(insn_t insn, reg_t reg); -reg_t insn_func_32_730(insn_t insn, reg_t reg); -reg_t insn_func_64_730(insn_t insn, reg_t reg); -reg_t insn_func_32_738(insn_t insn, reg_t reg); -reg_t insn_func_64_738(insn_t insn, reg_t reg); -reg_t insn_func_32_739(insn_t insn, reg_t reg); -reg_t insn_func_64_739(insn_t insn, reg_t reg); -reg_t insn_func_32_754(insn_t insn, reg_t reg); -reg_t insn_func_64_754(insn_t insn, reg_t reg); -reg_t insn_func_32_755(insn_t insn, reg_t reg); -reg_t insn_func_64_755(insn_t insn, reg_t reg); -reg_t insn_func_32_759(insn_t insn, reg_t reg); -reg_t insn_func_64_759(insn_t insn, reg_t reg); -reg_t insn_func_32_761(insn_t insn, reg_t reg); -reg_t insn_func_64_761(insn_t insn, reg_t reg); -reg_t insn_func_32_762(insn_t insn, reg_t reg); -reg_t insn_func_64_762(insn_t insn, reg_t reg); -reg_t insn_func_32_763(insn_t insn, reg_t reg); -reg_t insn_func_64_763(insn_t insn, reg_t reg); -reg_t insn_func_32_770(insn_t insn, reg_t reg); -reg_t insn_func_64_770(insn_t insn, reg_t reg); -reg_t insn_func_32_771(insn_t insn, reg_t reg); -reg_t insn_func_64_771(insn_t insn, reg_t reg); -reg_t insn_func_32_779(insn_t insn, reg_t reg); -reg_t insn_func_64_779(insn_t insn, reg_t reg); -reg_t insn_func_32_786(insn_t insn, reg_t reg); -reg_t insn_func_64_786(insn_t insn, reg_t reg); -reg_t insn_func_32_787(insn_t insn, reg_t reg); -reg_t insn_func_64_787(insn_t insn, reg_t reg); -reg_t insn_func_32_793(insn_t insn, reg_t reg); -reg_t insn_func_64_793(insn_t insn, reg_t reg); -reg_t insn_func_32_794(insn_t insn, reg_t reg); -reg_t insn_func_64_794(insn_t insn, reg_t reg); -reg_t insn_func_32_796(insn_t insn, reg_t reg); -reg_t insn_func_64_796(insn_t insn, reg_t reg); -reg_t insn_func_32_802(insn_t insn, reg_t reg); -reg_t insn_func_64_802(insn_t insn, reg_t reg); -reg_t insn_func_32_818(insn_t insn, reg_t reg); -reg_t insn_func_64_818(insn_t insn, reg_t reg); -reg_t insn_func_32_819(insn_t insn, reg_t reg); -reg_t insn_func_64_819(insn_t insn, reg_t reg); -reg_t insn_func_32_825(insn_t insn, reg_t reg); -reg_t insn_func_64_825(insn_t insn, reg_t reg); -reg_t insn_func_32_826(insn_t insn, reg_t reg); -reg_t insn_func_64_826(insn_t insn, reg_t reg); -reg_t insn_func_32_827(insn_t insn, reg_t reg); -reg_t insn_func_64_827(insn_t insn, reg_t reg); -reg_t insn_func_32_834(insn_t insn, reg_t reg); -reg_t insn_func_64_834(insn_t insn, reg_t reg); -reg_t insn_func_32_850(insn_t insn, reg_t reg); -reg_t insn_func_64_850(insn_t insn, reg_t reg); -reg_t insn_func_32_857(insn_t insn, reg_t reg); -reg_t insn_func_64_857(insn_t insn, reg_t reg); -reg_t insn_func_32_858(insn_t insn, reg_t reg); -reg_t insn_func_64_858(insn_t insn, reg_t reg); -reg_t insn_func_32_866(insn_t insn, reg_t reg); -reg_t insn_func_64_866(insn_t insn, reg_t reg); -reg_t insn_func_32_867(insn_t insn, reg_t reg); -reg_t insn_func_64_867(insn_t insn, reg_t reg); -reg_t insn_func_32_882(insn_t insn, reg_t reg); -reg_t insn_func_64_882(insn_t insn, reg_t reg); -reg_t insn_func_32_889(insn_t insn, reg_t reg); -reg_t insn_func_64_889(insn_t insn, reg_t reg); -reg_t insn_func_32_890(insn_t insn, reg_t reg); -reg_t insn_func_64_890(insn_t insn, reg_t reg); -reg_t insn_func_32_891(insn_t insn, reg_t reg); -reg_t insn_func_64_891(insn_t insn, reg_t reg); -reg_t insn_func_32_898(insn_t insn, reg_t reg); -reg_t insn_func_64_898(insn_t insn, reg_t reg); -reg_t insn_func_32_914(insn_t insn, reg_t reg); -reg_t insn_func_64_914(insn_t insn, reg_t reg); -reg_t insn_func_32_915(insn_t insn, reg_t reg); -reg_t insn_func_64_915(insn_t insn, reg_t reg); -reg_t insn_func_32_921(insn_t insn, reg_t reg); -reg_t insn_func_64_921(insn_t insn, reg_t reg); -reg_t insn_func_32_922(insn_t insn, reg_t reg); -reg_t insn_func_64_922(insn_t insn, reg_t reg); -reg_t insn_func_32_930(insn_t insn, reg_t reg); -reg_t insn_func_64_930(insn_t insn, reg_t reg); -reg_t insn_func_32_946(insn_t insn, reg_t reg); -reg_t insn_func_64_946(insn_t insn, reg_t reg); -reg_t insn_func_32_947(insn_t insn, reg_t reg); -reg_t insn_func_64_947(insn_t insn, reg_t reg); -reg_t insn_func_32_953(insn_t insn, reg_t reg); -reg_t insn_func_64_953(insn_t insn, reg_t reg); -reg_t insn_func_32_954(insn_t insn, reg_t reg); -reg_t insn_func_64_954(insn_t insn, reg_t reg); -reg_t insn_func_32_955(insn_t insn, reg_t reg); -reg_t insn_func_64_955(insn_t insn, reg_t reg); -reg_t insn_func_32_962(insn_t insn, reg_t reg); -reg_t insn_func_64_962(insn_t insn, reg_t reg); -reg_t insn_func_32_978(insn_t insn, reg_t reg); -reg_t insn_func_64_978(insn_t insn, reg_t reg); -reg_t insn_func_32_985(insn_t insn, reg_t reg); -reg_t insn_func_64_985(insn_t insn, reg_t reg); -reg_t insn_func_32_986(insn_t insn, reg_t reg); -reg_t insn_func_64_986(insn_t insn, reg_t reg); -reg_t insn_func_32_994(insn_t insn, reg_t reg); -reg_t insn_func_64_994(insn_t insn, reg_t reg); -reg_t insn_func_32_995(insn_t insn, reg_t reg); -reg_t insn_func_64_995(insn_t insn, reg_t reg); -reg_t insn_func_32_1010(insn_t insn, reg_t reg); -reg_t insn_func_64_1010(insn_t insn, reg_t reg); -reg_t insn_func_32_1011(insn_t insn, reg_t reg); -reg_t insn_func_64_1011(insn_t insn, reg_t reg); -reg_t insn_func_32_1017(insn_t insn, reg_t reg); -reg_t insn_func_64_1017(insn_t insn, reg_t reg); -reg_t insn_func_32_1018(insn_t insn, reg_t reg); -reg_t insn_func_64_1018(insn_t insn, reg_t reg); diff --git a/riscv/riscv.mk.in b/riscv/riscv.mk.in index 42679d0..7863e99 100644 --- a/riscv/riscv.mk.in +++ b/riscv/riscv.mk.in @@ -2,6 +2,9 @@ riscv_subproject_deps = \ softfloat_riscv \ softfloat \ +riscv_install_prog_srcs = \ + riscv-isa-run.cc \ + riscv_hdrs := \ htif.h \ common.h \ @@ -14,26 +17,6 @@ riscv_hdrs := \ insn_header.h \ cachesim.h \ memtracer.h \ - dispatch.h \ - -NDISPATCH := 9 -DISPATCH_SRCS := \ - dispatch0.cc \ - dispatch1.cc \ - dispatch2.cc \ - dispatch3.cc \ - dispatch4.cc \ - dispatch5.cc \ - dispatch6.cc \ - dispatch7.cc \ - dispatch8.cc \ - dispatch9.cc \ - -$(DISPATCH_SRCS): %.cc: dispatch $(wildcard insns/*.h) opcodes.h - $< $(subst dispatch,,$(subst .cc,,$@)) $(NDISPATCH) 1024 < $(src_dir)/riscv/opcodes.h > $@ - -$(src_dir)/riscv/dispatch.h: %.h: dispatch opcodes.h - $< $(NDISPATCH) 1024 < $(src_dir)/riscv/opcodes.h > $@ riscv_srcs = \ htif.cc \ @@ -48,5 +31,19 @@ riscv_srcs = \ riscv_test_srcs = -riscv_install_prog_srcs = \ - riscv-isa-run.cc \ +riscv_gen_hdrs: \ + dispatch.h \ + +NDISPATCH := 9 +DISPATCH_SRCS = $(addsuffix .cc,$(addprefix dispatch,$(call range,0,$(NDISPATCH)+1))) + +$(DISPATCH_SRCS): %.cc: dispatch $(wildcard insns/*.h) opcodes.h + $< $(subst dispatch,,$(subst .cc,,$@)) $(NDISPATCH) 1024 < $(src_dir)/riscv/opcodes.h > $@ + +dispatch.h: %.h: dispatch opcodes.h + echo $(riscv_srcs) + $< $(NDISPATCH) 1024 < $(src_dir)/riscv/opcodes.h > $@ + +riscv_junk = \ + dispatch.h \ + $(DISPATCH_SRCS) \ |