R600: Implement custom SDIVREM.
authorJan Vesely <jan.vesely@rutgers.edu>
Sun, 22 Jun 2014 21:43:00 +0000 (21:43 +0000)
committerJan Vesely <jan.vesely@rutgers.edu>
Sun, 22 Jun 2014 21:43:00 +0000 (21:43 +0000)
commitcd88535ab984f8d271a895cb6d857105f64fce3d
tree937b03db480aaeb5b9fd415d9b3fbf36cd33a08e
parent728ea0c91b40a8d95dc271522dd24d30f9662941
R600: Implement custom SDIVREM.

Instead of separate SDIV/SREM. SDIV used UDIV which in turn used UDIVREM anyway.
SREM used SDIV(UDIV->UDIVREM)+MUL+SUB, using UDIVREM directly is more efficient.

v2: Don't use all caps names

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211477 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/R600/AMDGPUISelLowering.cpp
lib/Target/R600/AMDGPUISelLowering.h