From 977ceb404d76b868bb8105880ccc2d1ce8de875a Mon Sep 17 00:00:00 2001 From: Wilson Snyder Date: Wed, 29 Apr 2020 18:10:43 -0400 Subject: [PATCH] Mention -march-native, #2289. --- bin/verilator | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/bin/verilator b/bin/verilator index fb083c5c3..1b448da73 100755 --- a/bin/verilator +++ b/bin/verilator @@ -2071,18 +2071,18 @@ OPT, OPT_FAST, or OPT_SLOW lib/verilated.mk. Or, use the -CFLAGS and/or the compiler or linker. Or, just for one run, pass them on the command line to make: - make OPT_FAST="-Os -fno-stack-protector" -f Vour.mk Vour__ALL.a + make OPT_FAST="-Os -march=native -fno-stack-protector" -f Vour.mk Vour__ALL.a OPT_FAST specifies optimizations for those programs that are part of the fast path, mostly code that is executed every cycle. OPT_SLOW specifies optimizations for slow-path files (plus tracing), which execute only rarely, yet take a long time to compile with optimization on. OPT specifies overall optimization and affects all compiles, including those -OPT_FAST and OPT_SLOW control. For best results, use OPT="-Os", and link -with "-static". Nearly the same results can be had with much better -compile times with OPT_FAST="-O1 -fstrict-aliasing". Higher optimization -such as "-O2" or "-O3" may help, but gcc compile times may be excessive -under O3 on even medium sized designs. +OPT_FAST and OPT_SLOW control. For best results, use OPT="-Os +-march=native", and link with "-static". Nearly the same results can be +had with much better compile times with OPT_FAST="-O1 -fstrict-aliasing". +Higher optimization such as "-O2" or "-O3" may help, but gcc compile times +may be excessive under O3 on even medium sized designs. Unfortunately, using the optimizer with SystemC files can result in compiles taking several minutes. (The SystemC libraries have many little