@@ -158,14 +158,15 @@ hsa_full_profile_p (void)
return true;
}
-/* Return true if operand number OPNUM of instruction with OPCODE is an output.
- False if it is an input. */
+/* Return true if a register in operand number OPNUM of instruction with OPCODE
+ is output of that instruction. False if it is an input. */
bool
-hsa_opcode_op_output_p (BrigOpcode16_t opcode, int opnum)
+hsa_opcode_op_output_p (int opcode, int opnum)
{
switch (opcode)
{
+ case HSA_OPCODE_PHI:
case BRIG_OPCODE_CBR:
case BRIG_OPCODE_ST:
/* FIXME: There are probably missing cases here, double check. */
@@ -984,7 +984,7 @@ void hsa_init_compilation_unit_data (void);
void hsa_deinit_compilation_unit_data (void);
bool hsa_machine_large_p (void);
bool hsa_full_profile_p (void);
-bool hsa_opcode_op_output_p (BrigOpcode16_t, int);
+bool hsa_opcode_op_output_p (int, int);
unsigned hsa_type_bit_size (BrigType16_t t);
BrigType16_t hsa_bittype_for_type (BrigType16_t t);
bool hsa_type_float_p (BrigType16_t type);