This patch fixes a bug in SIInstrInfo where the implicit register operands were added to a machine instruction
in incorrect order - The implicit uses were added before the implicit defs.
I found this bug while trying to enable the implicit register operand verification in machine verifier.
Before:
V_ADD_I32_e32 killed %13, killed %12, implicit %exec, implicit-def %vcc
After:
V_ADD_I32_e32 killed %13, killed %12, implicit-def %vcc, implicit %exec
This patch also makes the method 'addImplicitDefUseOperands' in the machine instruction class public so that we can reuse it in SIInstrInfo.