[PATCH] D19426: [AArch64] Use the reciprocal estimation machinery

Evandro Menezes via llvm-commits llvm-commits at lists.llvm.org
Tue Apr 26 05:38:53 PDT 2016


evandro added a comment.

Thank you.


================
Comment at: llvm/lib/Target/AArch64/AArch64.td:67
@@ -61,1 +66,3 @@
+   "Enable the approximation of floating-point division", [FeatureNEON]>;
+
 //===----------------------------------------------------------------------===//
----------------
eastig wrote:
> I think it's better to use names something like:
> FeatureReciprocalSqrtEstimate
> FeatureReciprocalEstimate
> 
> They don't directly calculate DIV and SQRT. They calculate aproximate 1/DIV and 1/SQRT.
Do you mean to replace HasApproximateSqrt with FeatureReciprocalSqrtEstimate and so on?

================
Comment at: llvm/lib/Target/AArch64/AArch64.td:142
@@ -135,1 +141,3 @@
+                                    FeaturePerfMon,
+                                    FeatureApproximateSqrt]>;
 
----------------
eastig wrote:
> Why is FeatureApproximateDiv not on the list of the features?
Because Exynos M1 doesn't benefit from it.  It might be beneficial in other cores, when their respective maintainers should be better equipped than me to decide whether to add such features or not.

================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:4663
@@ -4623,1 +4662,3 @@
+}
+
 //===----------------------------------------------------------------------===//
----------------
eastig wrote:
> Most of the code of the functions is the same. Only differences are RecipOp string and Opcodes. I would suggest to create a template function or a function with common code. Also documenting parameters will be good. Am I correct they will be used for step versions in the future?
Will do.

I'm currently working on having the step instrs to be emitted instead of discrete code.


Repository:
  rL LLVM

http://reviews.llvm.org/D19426





More information about the llvm-commits mailing list