Fix abs with char and short cuda types. #747
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #746.
I'm not really sure how the current code doesn't infinite loop (compiler optimizes it away? It infinite loops for me if I try to printf in there).
There are also two abs functions defined: see: http://stackoverflow.com/questions/8226705/g-abs-on-a-short-int-appears-to-turn-it-into-a-double.
We want the int one; the template version doesn't compile since you get errors like: "calling a host function("std::abs ") from a global function("kernelPointwiseApply2< ::Tensor_abs_Short_Op, short, short, unsigned int, (int)-1, (int)2> ") is not allowed"