Merge pull request #312 from AntelopeIO/pr309_main_merge
[4.1 -> main] disable CFL Alias Analysis by default; fixes known cases of indeterministic build output
This commit is contained in:
@@ -47,7 +47,7 @@ compiler options:
|
||||
-finline-hint-functions - Inline functions which are (explicitly or implicitly) marked inline
|
||||
-fmerge-all-constants - Allow merging of constants
|
||||
-fnative - Compile and link for x86-64
|
||||
-fno-cfl-aa - Disable CFL Alias Analysis
|
||||
-fcfl-aa - Enable CFL Alias Analysis
|
||||
-fno-elide-constructors - Disable C++ copy constructor elision
|
||||
-fno-lto - Disable LTO
|
||||
-fno-post-pass - Don't run post processing pass
|
||||
|
||||
@@ -49,7 +49,7 @@ compiler options:
|
||||
-finline-hint-functions - Inline functions which are (explicitly or implicitly) marked inline
|
||||
-fmerge-all-constants - Allow merging of constants
|
||||
-fnative - Compile and link for x86-64
|
||||
-fno-cfl-aa - Disable CFL Alias Analysis
|
||||
-cfl-aa - Enable CFL Alias Analysis
|
||||
-fno-elide-constructors - Disable C++ copy constructor elision
|
||||
-fno-lto - Disable LTO
|
||||
-fno-post-pass - Don't run post processing pass
|
||||
|
||||
@@ -21,7 +21,7 @@ ld options:
|
||||
-L=<string> - Add directory to library search path
|
||||
-fasm - Assemble file for x86-64
|
||||
-fnative - Compile and link for x86-64
|
||||
-fno-cfl-aa - Disable CFL Alias Analysis
|
||||
-fcfl-aa - Enable CFL Alias Analysis
|
||||
-fno-lto - Disable LTO
|
||||
-fno-post-pass - Don't run post processing pass
|
||||
-fno-stack-first - Don't set the stack first in memory
|
||||
|
||||
@@ -167,9 +167,9 @@ execution in Antelope block chain virtual machines.
|
||||
|
||||
Compile and link for x86-64
|
||||
|
||||
**`--fno-cfl-aa`**
|
||||
**`--fcfl-aa`**
|
||||
|
||||
Disable CFL Alias Analysis
|
||||
Enable CFL Alias Analysis
|
||||
|
||||
**`--fno-elide-constructors`**
|
||||
|
||||
|
||||
@@ -187,9 +187,9 @@ execution in Antelope block chain virtual machines.
|
||||
|
||||
Compile and link for x86-64
|
||||
|
||||
**`--fno-cfl-aa`**
|
||||
**`--fcfl-aa`**
|
||||
|
||||
Disable CFL Alias Analysis
|
||||
Enable CFL Alias Analysis
|
||||
|
||||
**`--fno-elide-constructors`**
|
||||
|
||||
|
||||
@@ -39,9 +39,9 @@ execution in Antelope block chain virtual machines.
|
||||
|
||||
Compile and link for x86-64
|
||||
|
||||
**`--fno-cfl-aa`**
|
||||
**`--fcfl-aa`**
|
||||
|
||||
Disable CFL Alias Analysis
|
||||
Enable CFL Alias Analysis
|
||||
|
||||
**`--fno-lto`**
|
||||
|
||||
|
||||
@@ -5,7 +5,6 @@ include( CDTMacros )
|
||||
|
||||
macro(add_cdt_unit_test TEST_NAME)
|
||||
add_native_executable(${TEST_NAME} ${TEST_NAME}.cpp)
|
||||
target_compile_options(${TEST_NAME} PRIVATE -fno-cfl-aa)
|
||||
if(CMAKE_BUILD_TYPE STREQUAL "Release")
|
||||
target_compile_options(${TEST_NAME} PRIVATE -O2)
|
||||
elseif(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
|
||||
@@ -80,9 +80,9 @@ static cl::opt<bool> fno_lto_opt(
|
||||
"fno-lto",
|
||||
cl::desc("Disable LTO"),
|
||||
cl::cat(LD_CAT));
|
||||
static cl::opt<bool> fno_cfl_aa_opt(
|
||||
"fno-cfl-aa",
|
||||
cl::desc("Disable CFL Alias Analysis"),
|
||||
static cl::opt<bool> fcfl_aa_opt(
|
||||
"fcfl-aa",
|
||||
cl::desc("Enable CFL Alias Analysis"),
|
||||
cl::cat(LD_CAT));
|
||||
static cl::opt<bool> fno_stack_first_opt(
|
||||
"fno-stack-first",
|
||||
@@ -617,7 +617,7 @@ static Options CreateOptions(bool add_defaults=true) {
|
||||
else
|
||||
pp_dir = eosio::cdt::whereami::where();
|
||||
|
||||
if (!fno_cfl_aa_opt) {
|
||||
if (fcfl_aa_opt) {
|
||||
copts.emplace_back("-mllvm");
|
||||
copts.emplace_back("-use-cfl-aa-in-codegen=both");
|
||||
agopts.emplace_back("-mllvm");
|
||||
|
||||
Reference in New Issue
Block a user