Add missing dependency.
R600/SI: Add enums for some hard-coded values
R600/SI: Use ISD::MUL instead of ISD::UMULO when lowering division

ISD::MUL and ISD:UMULO are the same except that UMULO sets an overflow
bit.  Since we aren't using the overflow bit, we should use ISD::MUL.
R600: Don't set BypassSlowDiv for 64-bit division

BypassSlowDiv is used by codegen prepare to insert a run-time
check to see if the operands to a 64-bit division are really 32-bit
values and if they are it will do 32-bit division instead.

This is not useful for R600, which has predicated control flow since
both the 32-bit and 64-bit paths will be executed in most cases.  It
also increases code size which can lead to more instruction cache
misses.
R600/SI: Remove modifier operands from V_CNDMASK_B32_e64

Modifiers don't work for this instruction.
R600/SI: Add support for global atomic add