See bug 41156: https://bugs.llvm.org/show_bug.cgi?id=41156
This is the second part of a fix. This change corrects the following bug: constant expressions started with "-" followed by a symbol are evaluated incorrectly: the "-" sign is simply ignored.
For example, the sequence
.set foo, 1 v_mul_f32 v0, -foo+2, v2 // -foo+2 = 1?
results in the same code as the following:
v_mul_f32 v0, 3, v2