8 #include <orc-test/orctest.h>
14 void test_opcode (OrcStaticOpcode *opcode);
15 void test_opcode_const (OrcStaticOpcode *opcode);
16 void test_opcode_param (OrcStaticOpcode *opcode);
19 main (int argc, char *argv[])
22 OrcOpcodeSet *opcode_set;
27 opcode_set = orc_opcode_set_get ("sys");
29 for(i=0;i<opcode_set->n_opcodes;i++){
30 if (verbose) printf("/* %s %d,%d,%d */\n",
31 opcode_set->opcodes[i].name,
32 opcode_set->opcodes[i].dest_size[0],
33 opcode_set->opcodes[i].src_size[0],
34 opcode_set->opcodes[i].src_size[1]);
35 test_opcode (opcode_set->opcodes + i);
39 printf("test failed\n");
42 printf("test passed\n");
48 test_opcode (OrcStaticOpcode *opcode)
51 OrcCompileResult result;
54 p = orc_test_get_program_for_opcode (opcode);
57 result = orc_program_compile_for_target (p, orc_target_get_by_name("c"));
58 if (!ORC_COMPILE_RESULT_IS_SUCCESSFUL(result)) {
59 s = orc_program_get_asm_code (p);
73 test_opcode_const (OrcStaticOpcode *opcode)
76 OrcCompileResult result;
79 p = orc_test_get_program_for_opcode_const (opcode);
82 result = orc_program_compile_for_target (p, orc_target_get_by_name("c"));
83 if (!ORC_COMPILE_RESULT_IS_SUCCESSFUL(result)) {
84 s = orc_program_get_asm_code (p);
98 test_opcode_param (OrcStaticOpcode *opcode)
101 OrcCompileResult result;
104 p = orc_test_get_program_for_opcode_param (opcode);
107 result = orc_program_compile_for_target (p, orc_target_get_by_name("c"));
108 if (!ORC_COMPILE_RESULT_IS_SUCCESSFUL(result)) {
109 s = orc_program_get_asm_code (p);
119 orc_program_free (p);