[AMDGPU] Fix for AMDGPU MUL_I24 known bits calculation
At present, the code calculating known bits of AMDGPU MUL_I24 confuses
the concepts of "non-negative number" and "positive number".
In some situations, it results in incorrect code. I have a case where
the optimizer replaces the result of calculating MUL_I24(-5, 0) with -8.
Differential Revision: https://reviews.llvm.org/D70367
NB: patch was authored by ekuznetsov139; this patch is submitted prior to
the submission of the patch to llvm-trunk; there is agreement on the fix;
the lit test is still under revision. The patch is submitted to amd-stg-open-hcc
to resolve several high-priority internal bugs. Lastly, the lit test was tweaked
to fix a syntax error not yet corrected in the phab patch.
Change-Id: Iaced35ee4b97946ebb12515f08ea39b9bf5c48ca