efriedma added inline comments.

================
Comment at: lib/CodeGen/CGBuiltin.cpp:10071
+      // is _MM_FROUND_CUR_DIRECTION
+      if (cast<llvm::ConstantInt>(Ops[4])->getZExtValue() != 4)
+        UsesNonDefaultRounding = true;
----------------
Given we're ignoring floating-point exceptions, we should also ignore the 
"rounding mode" operand (__MM_FROUND_NO_EXC only affects exceptions, and the 
other values are irrelevant because there isn't any actual rounding involved).


================
Comment at: lib/CodeGen/CGBuiltin.cpp:10156
 
-    // We can't handle 8-31 immediates with native IR, use the intrinsic.
-    // Except for predicates that create constants.
+    // These two must still use the intrinsic, when some interseting rounding
+    // mode is specified.
----------------
*interesting.


https://reviews.llvm.org/D45616



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to