Merge branch 'confprec'
authorQuan Nguyen <quannguyen@berkeley.edu>
Tue, 21 Jan 2014 04:33:22 +0000 (20:33 -0800)
committerQuan Nguyen <quannguyen@berkeley.edu>
Tue, 21 Jan 2014 04:33:22 +0000 (20:33 -0800)
Conflicts:
hwacha/hwacha.mk.in

1  2 
hwacha/decode_hwacha.h
hwacha/hwacha.mk.in

diff --combined hwacha/decode_hwacha.h
index fa94b721bbeac9727a792be03f6dc48435237781,badf75010b3eaeef6a545e9c3a6691f2cac0059a..74e132679df5c4f6018aa21f9b38288273b559e3
  #define WRITE_VL(vlnext) (h->get_ct_state()->vl = (vlnext))
  #define WRITE_UTIDX(value) (h->get_ct_state()->count = (value))
  #define WRITE_VF_PC(pcnext) (h->get_ct_state()->vf_pc = (pcnext))
+ #define WRITE_PREC(precision) (h->get_ct_state()->prec = (precision))
  
  #define INSN_RS1 (insn.rs1())
  #define INSN_RS2 (insn.rs2())
  #define INSN_RS3 (insn.rs3())
  #define INSN_RD (insn.rd())
 -#define INSN_SEG ((insn.i_imm() >> 9)+1)
 +#define INSN_SEG (((reg_t)insn.i_imm() >> 9)+1)
  
  static inline reg_t read_xpr(hwacha_t* h, insn_t insn, uint32_t idx, size_t src)
  {
diff --combined hwacha/hwacha.mk.in
index f2a01789cbe9d68e8a82983cb02c274e220a6224,6a15e3a11106ce9472aa63ae0b7808dc33d110e3..de99f501933b372c31d0675286e28f907ce25562
@@@ -1,3 -1,6 +1,3 @@@
 -get_insn_list = $(shell sed 's/DECLARE_INSN(\(.*\),.*,.*)/\1/' $(1))
 -get_opcode = $(shell grep \\\<$(2)\\\> $(1) | sed 's/DECLARE_INSN(.*,\(.*\),.*)/\1/')
 -
  hwacha_subproject_deps = \
        riscv \
        softfloat \
@@@ -9,14 -12,18 +9,18 @@@ hwacha_hdrs = 
        hwacha_xcpt.h \
        decode_hwacha.h \
        decode_hwacha_ut.h \
+       decode_hwacha_ut_half.h \
        opcodes_hwacha.h \
        opcodes_hwacha_ut.h \
+       opcodes_hwacha_ut_half.h \
  
  hwacha_srcs = \
        hwacha.cc \
        hwacha_disasm.cc \
+       cvt16.cc \
        $(hwacha_gen_srcs) \
        $(hwacha_ut_gen_srcs) \
+       $(hwacha_ut_half_gen_srcs) \
  
  hwacha_test_srcs =
  
@@@ -32,3 -39,8 +36,8 @@@ hwacha_ut_gen_srcs = 
  $(hwacha_ut_gen_srcs): %.cc: insns_ut/%.h insn_template_hwacha_ut.cc
        sed 's/NAME/$(subst .cc,,$@)/' $(src_dir)/hwacha/insn_template_hwacha_ut.cc | sed 's/OPCODE/$(call get_opcode,$(src_dir)/hwacha/opcodes_hwacha_ut.h,$(subst .cc,,$@))/' > $@
  
+ hwacha_ut_half_gen_srcs = \
+       $(addsuffix .cc, $(call get_insn_list,$(src_dir)/hwacha/opcodes_hwacha_ut_half.h))
+ $(hwacha_ut_half_gen_srcs): %.cc: insns_ut_half/%.h insn_template_hwacha_ut_half.cc
+       sed 's/NAME/$(subst .cc,,$@)/' $(src_dir)/hwacha/insn_template_hwacha_ut_half.cc | sed 's/OPCODE/$(call get_opcode,$(src_dir)/hwacha/opcodes_hwacha_ut_half.h,$(subst .cc,,$@))/' > $@