[llvm-branch-commits] [clang] 9ac3941 - Ofast deprecation clarifications (#101005)

via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Fri Aug 2 05:56:23 PDT 2024


Author: Sjoerd Meijer
Date: 2024-08-02T12:40:29Z
New Revision: 9ac3941f8f15241934f05d16df77233af510d1b9

URL: https://github.com/llvm/llvm-project/commit/9ac3941f8f15241934f05d16df77233af510d1b9
DIFF: https://github.com/llvm/llvm-project/commit/9ac3941f8f15241934f05d16df77233af510d1b9.diff

LOG: Ofast deprecation clarifications (#101005)

Following up on the RFC discussion, this is clarifying that the main
purpose and effect of the -Ofast deprecation is to discourage its usage
and that everything else is more or less open for discussion, e.g. there
is no timeline yet for removal.

---------

Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
(cherry picked from commit 48d4d4b641702bf6db03a1bac73b7e13dea28349)

Added: 
    

Modified: 
    clang/docs/CommandGuide/clang.rst

Removed: 
    


################################################################################
diff  --git a/clang/docs/CommandGuide/clang.rst b/clang/docs/CommandGuide/clang.rst
index 663aca1f6ddcb..a0c2594d06c61 100644
--- a/clang/docs/CommandGuide/clang.rst
+++ b/clang/docs/CommandGuide/clang.rst
@@ -429,8 +429,12 @@ Code Generation Options
 
     :option:`-Ofast` Enables all the optimizations from :option:`-O3` along
     with other aggressive optimizations that may violate strict compliance with
-    language standards. This is deprecated in favor of :option:`-O3`
-    in combination with :option:`-ffast-math`.
+    language standards. This is deprecated in Clang 19 and a warning is emitted
+    that :option:`-O3` in combination with :option:`-ffast-math` should be used
+    instead if the request for non-standard math behavior is intended. There
+    is no timeline yet for removal; the aim is to discourage use of
+    :option:`-Ofast` due to the surprising behavior of an optimization flag
+    changing the observable behavior of correct code.
 
     :option:`-Os` Like :option:`-O2` with extra optimizations to reduce code
     size.


        


More information about the llvm-branch-commits mailing list