diff --git a/CMakeLists.txt b/CMakeLists.txt index 100351184..ff5475321 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,8 +2,8 @@ cmake_minimum_required(VERSION 2.8.12) find_program(CCACHE_FOUND ccache) if(CCACHE_FOUND) - set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache) - set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache) + set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache) + set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache) endif(CCACHE_FOUND) if (${CMAKE_VERSION} VERSION_GREATER "3.8") @@ -92,17 +92,17 @@ set(WITH_PARMYS OFF CACHE BOOL "Enable Yosys as elaborator and parmys-plugin as # TCL file/lib required to link with SWIG generated wrapper if (OPENFPGA_WITH_SWIG) -#Find Tcl - include(FindTCL) - message(STATUS "tcl.h path is : ${TCL_INCLUDE_PATH}") - message(STATUS "libtcl.so path is : ${TCL_LIBRARY}") + #Find Tcl + include(FindTCL) + message(STATUS "tcl.h path is : ${TCL_INCLUDE_PATH}") + message(STATUS "libtcl.so path is : ${TCL_LIBRARY}") -#Find SWIG - find_package(SWIG 3.0 REQUIRED) - if (SWIG_VERSION VERSION_GREATER_EQUAL "4.1.0") - message(WARNING "Using SWIG >= ${SWIG_VERSION} -flatstaticmethod flag for python") - endif() - include(UseSWIG) + #Find SWIG + find_package(SWIG 3.0 REQUIRED) + if (SWIG_VERSION VERSION_GREATER_EQUAL "4.1.0") + message(WARNING "Using SWIG >= ${SWIG_VERSION} -flatstaticmethod flag for python") + endif() + include(UseSWIG) endif() #Compiler flag configuration checks @@ -150,71 +150,71 @@ endif() set(WARN_FLAGS "") if (MSVC) - # Visual studio warnings - # Note that we do not use /Wall since it generates warnings about standard library headers - set(WARN_FLAGS_TO_CHECK # the flags to check if the compiler supports - "/W4" # Most warnings - ) + # Visual studio warnings + # Note that we do not use /Wall since it generates warnings about standard library headers + set(WARN_FLAGS_TO_CHECK # the flags to check if the compiler supports + "/W4" # Most warnings + ) else () - set(WARN_FLAGS_TO_CHECK # the flags to check if the compiler supports - #GCC-like - "-Wall" #Most warnings, typically good - "-Wextra" #Extra warning, usually good - "-Wpedantic" #Ensure ISO compliance (i.e. no non-standard extensions) - "-Wcast-qual" #Warn if cast removes qualifier (e.g. const char* -> char*) - "-Wcast-align" #Warn if a cast causes memory alignment changes - "-Wshadow" #Warn if local variable shadows another variable - "-Wformat=2" #Sanity checks for printf-like formatting - "-Wno-format-nonliteral" # But don't worry about non-literal formtting (i.e. run-time printf format strings) - "-Wlogical-op" #Checks for logical op when bit-wise expected - "-Wmissing-declarations" #Warn if a global function is defined with no declaration - "-Wmissing-include-dirs" #Warn if a user include directory is missing - "-Wredundant-decls" #Warn if there are overlapping declarations - "-Wswitch-default" #Warn if a switch has no default - "-Wundef" #Warn if #if() preprocessor refers to an undefined directive - "-Wunused" #Warn about unused variables/parameters - "-Wunused-variable" #Warn about variables that are not used - "-Wunused-parameter" #Warn about function parameters which are unused - "-Wdisabled-optimization" #Warn when optimizations are skipped (usually due to large/complex code) - "-Wnoexcept" #Warn when functions should be noexcept (i.e. compiler know it doesn't throw) - "-Woverloaded-virtual" #Warn when a function declaration overrides a virtual method - "-Wctor-dtor-privacy" #Warn about inaccessible constructors/destructors - "-Wnon-virtual-dtor" #Warn about missing virtual destructors - "-Wduplicated-cond" #Warn about identical conditions in if-else chains - "-Wduplicated-branches" #Warn when different branches of an if-else chain are equivalent - "-Wnull-dereference" #Warn about null pointer dereference execution paths - "-Wuninitialized" #Warn about unitialized values - "-Winit-self" #Warn about self-initialization - "-Wcatch-value=3" #Warn when catch statements don't catch by reference - "-Wextra-semi" #Warn about redudnant semicolons - "-Wimplicit-fallthrough=3" #Warn about case fallthroughs, but allow 'fallthrough' comments to suppress warnings - #GCC-like optional - #"-Wsuggest-final-types" #Suggest where 'final' would help if specified on a type methods - #"-Wsuggest-final-methods" #Suggest where 'final' would help if specified on methods - #"-Wsuggest-override" #Suggest where 'override' should be specified - #"-Wold-style-cast" #Warn about using c-style casts - #"-Wconversion" #Warn when type conversions may change value - #"-Wsign-conversion" #Warn if a conversion may change the sign - #"-Wpadded" #Will warn if additional padding is introduced to a struct/class. Turn on if optimizing class memory layouts - #"-Wstrict-overflow=2" #Warn if the compiler optimizes assuming signed overflow does not occur - #"-Wfloat-equal" #Warn about using direct floating point equality - #"-Wunsafe-loop-optimizations" #Warn when loops can't be optimized - #"-Wswitch-enum" #Warn about uncovered enumeration values in a switch (even if there is a default) - #"-Wsign-promo" #Warn when overload resolution converts an unsigned type to signed when an unsigned overload exists - #"-Wdouble-promotion" #Warn when float is implicitly propted to double - #"-Wuseless-cast" #Warn about casts to the same type - #"-Wzero-as-null-pointer-constant" #Warn about using '0' instead of nullptr - ) + set(WARN_FLAGS_TO_CHECK # the flags to check if the compiler supports + #GCC-like + "-Wall" #Most warnings, typically good + "-Wextra" #Extra warning, usually good + "-Wpedantic" #Ensure ISO compliance (i.e. no non-standard extensions) + "-Wcast-qual" #Warn if cast removes qualifier (e.g. const char* -> char*) + "-Wcast-align" #Warn if a cast causes memory alignment changes + "-Wshadow" #Warn if local variable shadows another variable + "-Wformat=2" #Sanity checks for printf-like formatting + "-Wno-format-nonliteral" # But don't worry about non-literal formatting (i.e. run-time printf format strings) + "-Wlogical-op" #Checks for logical op when bit-wise expected + "-Wmissing-declarations" #Warn if a global function is defined with no declaration + "-Wmissing-include-dirs" #Warn if a user include directory is missing + "-Wredundant-decls" #Warn if there are overlapping declarations + "-Wswitch-default" #Warn if a switch has no default + "-Wundef" #Warn if #if() preprocessor refers to an undefined directive + "-Wunused" #Warn about unused variables/parameters + "-Wunused-variable" #Warn about variables that are not used + "-Wunused-parameter" #Warn about function parameters which are unused + "-Wdisabled-optimization" #Warn when optimizations are skipped (usually due to large/complex code) + "-Wnoexcept" #Warn when functions should be noexcept (i.e. compiler know it doesn't throw) + "-Woverloaded-virtual" #Warn when a function declaration overrides a virtual method + "-Wctor-dtor-privacy" #Warn about inaccessible constructors/destructors + "-Wnon-virtual-dtor" #Warn about missing virtual destructors + "-Wduplicated-cond" #Warn about identical conditions in if-else chains + "-Wduplicated-branches" #Warn when different branches of an if-else chain are equivalent + "-Wnull-dereference" #Warn about null pointer dereference execution paths + "-Wuninitialized" #Warn about uninitialized values + "-Winit-self" #Warn about self-initialization + "-Wcatch-value=3" #Warn when catch statements don't catch by reference + "-Wextra-semi" #Warn about redundant semicolons + "-Wimplicit-fallthrough=3" #Warn about case fallthroughs, but allow 'fallthrough' comments to suppress warnings + #GCC-like optional + #"-Wsuggest-final-types" #Suggest where 'final' would help if specified on a type methods + #"-Wsuggest-final-methods" #Suggest where 'final' would help if specified on methods + #"-Wsuggest-override" #Suggest where 'override' should be specified + #"-Wold-style-cast" #Warn about using c-style casts + #"-Wconversion" #Warn when type conversions may change value + #"-Wsign-conversion" #Warn if a conversion may change the sign + #"-Wpadded" #Will warn if additional padding is introduced to a struct/class. Turn on if optimizing class memory layouts + #"-Wstrict-overflow=2" #Warn if the compiler optimizes assuming signed overflow does not occur + #"-Wfloat-equal" #Warn about using direct floating point equality + #"-Wunsafe-loop-optimizations" #Warn when loops can't be optimized + #"-Wswitch-enum" #Warn about uncovered enumeration values in a switch (even if there is a default) + #"-Wsign-promo" #Warn when overload resolution converts an unsigned type to signed when an unsigned overload exists + #"-Wdouble-promotion" #Warn when float is implicitly prompted to double + #"-Wuseless-cast" #Warn about casts to the same type + #"-Wzero-as-null-pointer-constant" #Warn about using '0' instead of nullptr + ) endif() # check and see if the compiler supports the various warning flags # and add valid flags foreach (flag ${WARN_FLAGS_TO_CHECK}) - CHECK_CXX_COMPILER_FLAG(${flag} CXX_COMPILER_SUPPORTS_${flag}) - if (CXX_COMPILER_SUPPORTS_${flag}) - # flag supported, so enable it - set (WARN_FLAGS "${WARN_FLAGS} ${flag}") - endif() + CHECK_CXX_COMPILER_FLAG(${flag} CXX_COMPILER_SUPPORTS_${flag}) + if (CXX_COMPILER_SUPPORTS_${flag}) + # flag supported, so enable it + set (WARN_FLAGS "${WARN_FLAGS} ${flag}") + endif() endforeach() #Suppress IPO link warnings @@ -301,7 +301,7 @@ option(YOSYS_ENABLE_NDEBUG, "Enable non-debugging feature in compiled yosys" OFF ## Search and link dependent packages ## We need readline to compile if (YOSYS_ENABLE_READLINE) - find_package(Readline REQUIRED) + find_package(Readline REQUIRED) endif() #PugiXml has some deliberate switch fallthrough cases (as indicated by comments), but they diff --git a/Makefile b/Makefile index abb6e0760..e3d23b82a 100644 --- a/Makefile +++ b/Makefile @@ -24,7 +24,7 @@ CMAKE_BUILD_TYPE := $(shell echo ${BUILD_TYPE} | sed 's/_\?pgo//' | sed 's/_\?st # e.g. make CMAKE_FLAGS="-DCMAKE_CXX_COMPILER=g++-9' override CMAKE_FLAGS := -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -G 'Unix Makefiles' ${CMAKE_FLAGS} -# -s : Suppresss makefile output (e.g. entering/leaving directories) +# -s : Suppress makefile output (e.g. entering/leaving directories) # --output-sync target : For parallel compilation ensure output for each target is synchronized (make version >= 4.0) MAKEFLAGS := -s diff --git a/docs/source/dev_manual/version_number.rst b/docs/source/dev_manual/version_number.rst index feabce41f..9e75fa9e8 100644 --- a/docs/source/dev_manual/version_number.rst +++ b/docs/source/dev_manual/version_number.rst @@ -42,6 +42,6 @@ Version updates are made in the following scenario - significant improvements on Quality-of-Results (QoR). - significant changes on user interface. - - a techical feature is developed and validated by the community, which can impact the complete design flow. + - a technical feature is developed and validated by the community, which can impact the complete design flow. diff --git a/docs/source/tutorials/arch_modeling/quick_start.rst b/docs/source/tutorials/arch_modeling/quick_start.rst index 1b31300d1..6f2d87f27 100644 --- a/docs/source/tutorials/arch_modeling/quick_start.rst +++ b/docs/source/tutorials/arch_modeling/quick_start.rst @@ -30,7 +30,7 @@ A summary of the architectural features is as follows: - K4N4 Configurable Logic Block (CLB), which consists of four Basic Logic Elements (BLEs) and a fully-connected crossbar. Each BLE contains a 4-input Look-Up Table (LUT), a Flip-Flop (FF) and a 2:1 routing multiplexer - Length-1 routing wires interconnected by Wilton-Style Switch Block (SB) -The VPR architecture description is designed for EDA needs mainly, which lacks the details physical modelingrequired by OpenFPGA. +The VPR architecture description is designed for EDA needs mainly, which lacks the details physical modeling required by OpenFPGA. Here, we show a step-by-step adaption on the architecture template. Physical I/O Modeling diff --git a/docs/source/tutorials/getting_started/shell_shortcuts.rst b/docs/source/tutorials/getting_started/shell_shortcuts.rst index cb5d01bdc..2079b48aa 100644 --- a/docs/source/tutorials/getting_started/shell_shortcuts.rst +++ b/docs/source/tutorials/getting_started/shell_shortcuts.rst @@ -46,7 +46,7 @@ Once the ``openfpga.sh`` script is sourced, you can run any following commands d .. option:: clear-task-run - Clears all run diretories of the given task + Clears all run directories of the given task .. option:: run-modelsim diff --git a/openfpga.sh b/openfpga.sh index 6d2900a11..aad70bea2 100755 --- a/openfpga.sh +++ b/openfpga.sh @@ -132,7 +132,7 @@ goto-task () { done } -# Clears enviroment variables and fucntions +# Clears environment variables and functions unset-openfpga (){ unset -v OPENFPGA_PATH unset -f list-tasks run-task run-flow goto-task goto-root >/dev/null 2>&1