From 49f178ed94b5fad00d25dbd12adea0bf4732f803 Mon Sep 17 00:00:00 2001 From: gatecat Date: Fri, 8 Apr 2022 13:42:54 +0100 Subject: [PATCH] Split up common into kernel,place,route Signed-off-by: gatecat --- CMakeLists.txt | 9 ++++++--- common/{ => kernel}/arch_api.h | 0 common/{ => kernel}/arch_pybindings_shared.h | 0 common/{ => kernel}/archcheck.cc | 0 common/{ => kernel}/base_arch.h | 0 common/{ => kernel}/base_clusterinfo.h | 0 common/{ => kernel}/basectx.cc | 0 common/{ => kernel}/basectx.h | 0 common/{ => kernel}/bits.cc | 0 common/{ => kernel}/bits.h | 0 common/{ => kernel}/chain_utils.h | 0 common/{ => kernel}/command.cc | 0 common/{ => kernel}/command.h | 0 common/{ => kernel}/constraints.h | 0 common/{ => kernel}/constraints.impl.h | 0 common/{ => kernel}/context.cc | 0 common/{ => kernel}/context.h | 0 common/{ => kernel}/design_utils.cc | 0 common/{ => kernel}/design_utils.h | 0 common/{ => kernel}/deterministic_rng.h | 0 common/{ => kernel}/dynamic_bitarray.h | 0 common/{ => kernel}/embed.cc | 0 common/{ => kernel}/embed.h | 0 common/{ => kernel}/exclusive_state_groups.h | 0 common/{ => kernel}/exclusive_state_groups.impl.h | 0 common/{ => kernel}/handle_error.cc | 0 common/{ => kernel}/hashlib.h | 0 common/{ => kernel}/idstring.cc | 0 common/{ => kernel}/idstring.h | 0 common/{ => kernel}/idstringlist.cc | 0 common/{ => kernel}/idstringlist.h | 0 common/{ => kernel}/indexed_store.h | 0 common/{ => kernel}/log.cc | 0 common/{ => kernel}/log.h | 0 common/{ => kernel}/nextpnr.cc | 0 common/{ => kernel}/nextpnr.h | 0 common/{ => kernel}/nextpnr_assertions.cc | 0 common/{ => kernel}/nextpnr_assertions.h | 0 common/{ => kernel}/nextpnr_base_types.h | 0 common/{ => kernel}/nextpnr_namespaces.cc | 0 common/{ => kernel}/nextpnr_namespaces.h | 0 common/{ => kernel}/nextpnr_types.cc | 0 common/{ => kernel}/nextpnr_types.h | 0 common/{ => kernel}/property.cc | 0 common/{ => kernel}/property.h | 0 common/{ => kernel}/pybindings.cc | 0 common/{ => kernel}/pybindings.h | 0 common/{ => kernel}/pycontainers.h | 0 common/{ => kernel}/pywrappers.h | 0 common/{ => kernel}/relptr.h | 0 common/{ => kernel}/report.cc | 0 common/{ => kernel}/scope_lock.h | 0 common/{ => kernel}/sdf.cc | 0 common/{ => kernel}/sso_array.h | 0 common/{ => kernel}/str_ring_buffer.cc | 0 common/{ => kernel}/str_ring_buffer.h | 0 common/{ => kernel}/svg.cc | 0 common/{ => kernel}/timing.cc | 0 common/{ => kernel}/timing.h | 0 common/{ => kernel}/util.h | 0 common/{ => place}/fast_bels.h | 0 common/{ => place}/parallel_refine.cc | 0 common/{ => place}/parallel_refine.h | 0 common/{ => place}/place_common.cc | 0 common/{ => place}/place_common.h | 0 common/{ => place}/placer1.cc | 0 common/{ => place}/placer1.h | 0 common/{ => place}/placer_heap.cc | 0 common/{ => place}/placer_heap.h | 0 common/{ => place}/timing_opt.cc | 0 common/{ => place}/timing_opt.h | 0 common/{ => route}/router1.cc | 0 common/{ => route}/router1.h | 0 common/{ => route}/router2.cc | 0 common/{ => route}/router2.h | 0 75 files changed, 6 insertions(+), 3 deletions(-) rename common/{ => kernel}/arch_api.h (100%) rename common/{ => kernel}/arch_pybindings_shared.h (100%) rename common/{ => kernel}/archcheck.cc (100%) rename common/{ => kernel}/base_arch.h (100%) rename common/{ => kernel}/base_clusterinfo.h (100%) rename common/{ => kernel}/basectx.cc (100%) rename common/{ => kernel}/basectx.h (100%) rename common/{ => kernel}/bits.cc (100%) rename common/{ => kernel}/bits.h (100%) rename common/{ => kernel}/chain_utils.h (100%) rename common/{ => kernel}/command.cc (100%) rename common/{ => kernel}/command.h (100%) rename common/{ => kernel}/constraints.h (100%) rename common/{ => kernel}/constraints.impl.h (100%) rename common/{ => kernel}/context.cc (100%) rename common/{ => kernel}/context.h (100%) rename common/{ => kernel}/design_utils.cc (100%) rename common/{ => kernel}/design_utils.h (100%) rename common/{ => kernel}/deterministic_rng.h (100%) rename common/{ => kernel}/dynamic_bitarray.h (100%) rename common/{ => kernel}/embed.cc (100%) rename common/{ => kernel}/embed.h (100%) rename common/{ => kernel}/exclusive_state_groups.h (100%) rename common/{ => kernel}/exclusive_state_groups.impl.h (100%) rename common/{ => kernel}/handle_error.cc (100%) rename common/{ => kernel}/hashlib.h (100%) rename common/{ => kernel}/idstring.cc (100%) rename common/{ => kernel}/idstring.h (100%) rename common/{ => kernel}/idstringlist.cc (100%) rename common/{ => kernel}/idstringlist.h (100%) rename common/{ => kernel}/indexed_store.h (100%) rename common/{ => kernel}/log.cc (100%) rename common/{ => kernel}/log.h (100%) rename common/{ => kernel}/nextpnr.cc (100%) rename common/{ => kernel}/nextpnr.h (100%) rename common/{ => kernel}/nextpnr_assertions.cc (100%) rename common/{ => kernel}/nextpnr_assertions.h (100%) rename common/{ => kernel}/nextpnr_base_types.h (100%) rename common/{ => kernel}/nextpnr_namespaces.cc (100%) rename common/{ => kernel}/nextpnr_namespaces.h (100%) rename common/{ => kernel}/nextpnr_types.cc (100%) rename common/{ => kernel}/nextpnr_types.h (100%) rename common/{ => kernel}/property.cc (100%) rename common/{ => kernel}/property.h (100%) rename common/{ => kernel}/pybindings.cc (100%) rename common/{ => kernel}/pybindings.h (100%) rename common/{ => kernel}/pycontainers.h (100%) rename common/{ => kernel}/pywrappers.h (100%) rename common/{ => kernel}/relptr.h (100%) rename common/{ => kernel}/report.cc (100%) rename common/{ => kernel}/scope_lock.h (100%) rename common/{ => kernel}/sdf.cc (100%) rename common/{ => kernel}/sso_array.h (100%) rename common/{ => kernel}/str_ring_buffer.cc (100%) rename common/{ => kernel}/str_ring_buffer.h (100%) rename common/{ => kernel}/svg.cc (100%) rename common/{ => kernel}/timing.cc (100%) rename common/{ => kernel}/timing.h (100%) rename common/{ => kernel}/util.h (100%) rename common/{ => place}/fast_bels.h (100%) rename common/{ => place}/parallel_refine.cc (100%) rename common/{ => place}/parallel_refine.h (100%) rename common/{ => place}/place_common.cc (100%) rename common/{ => place}/place_common.h (100%) rename common/{ => place}/placer1.cc (100%) rename common/{ => place}/placer1.h (100%) rename common/{ => place}/placer_heap.cc (100%) rename common/{ => place}/placer_heap.h (100%) rename common/{ => place}/timing_opt.cc (100%) rename common/{ => place}/timing_opt.h (100%) rename common/{ => route}/router1.cc (100%) rename common/{ => route}/router1.h (100%) rename common/{ => route}/router2.cc (100%) rename common/{ => route}/router2.h (100%) diff --git a/CMakeLists.txt b/CMakeLists.txt index fcbbbb13..89bdb360 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -216,7 +216,7 @@ configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/common/version.h.in ${CMAKE_CURRENT_BINARY_DIR}/generated/version.h ) -include_directories(common/ json/ frontend/ 3rdparty/json11/ 3rdparty/pybind11/include ${Boost_INCLUDE_DIRS} ${PYTHON_INCLUDE_DIRS}) +include_directories(common/kernel/ common/place/ common/route/ json/ frontend/ 3rdparty/json11/ 3rdparty/pybind11/include ${Boost_INCLUDE_DIRS} ${PYTHON_INCLUDE_DIRS}) if(BUILD_HEAP) find_package (Eigen3 REQUIRED NO_MODULE) @@ -225,12 +225,15 @@ if(BUILD_HEAP) add_definitions(-DWITH_HEAP) endif() -aux_source_directory(common/ COMMON_SRC_FILES) +aux_source_directory(common/kernel/ KERNEL_SRC_FILES) +aux_source_directory(common/place/ PLACE_SRC_FILES) +aux_source_directory(common/route/ ROUTE_SRC_FILES) + aux_source_directory(json/ JSON_PARSER_FILES) aux_source_directory(3rdparty/json11 EXT_JSON11_FILES) aux_source_directory(frontend/ FRONTEND_FILES) -set(COMMON_FILES ${COMMON_SRC_FILES} ${EXT_JSON11_FILES} ${JSON_PARSER_FILES} ${FRONTEND_FILES}) +set(COMMON_FILES ${KERNEL_SRC_FILES} ${PLACE_SRC_FILES} ${ROUTE_SRC_FILES} ${EXT_JSON11_FILES} ${JSON_PARSER_FILES} ${FRONTEND_FILES}) if( NOT CMAKE_BUILD_TYPE ) set(CMAKE_BUILD_TYPE Release) endif() diff --git a/common/arch_api.h b/common/kernel/arch_api.h similarity index 100% rename from common/arch_api.h rename to common/kernel/arch_api.h diff --git a/common/arch_pybindings_shared.h b/common/kernel/arch_pybindings_shared.h similarity index 100% rename from common/arch_pybindings_shared.h rename to common/kernel/arch_pybindings_shared.h diff --git a/common/archcheck.cc b/common/kernel/archcheck.cc similarity index 100% rename from common/archcheck.cc rename to common/kernel/archcheck.cc diff --git a/common/base_arch.h b/common/kernel/base_arch.h similarity index 100% rename from common/base_arch.h rename to common/kernel/base_arch.h diff --git a/common/base_clusterinfo.h b/common/kernel/base_clusterinfo.h similarity index 100% rename from common/base_clusterinfo.h rename to common/kernel/base_clusterinfo.h diff --git a/common/basectx.cc b/common/kernel/basectx.cc similarity index 100% rename from common/basectx.cc rename to common/kernel/basectx.cc diff --git a/common/basectx.h b/common/kernel/basectx.h similarity index 100% rename from common/basectx.h rename to common/kernel/basectx.h diff --git a/common/bits.cc b/common/kernel/bits.cc similarity index 100% rename from common/bits.cc rename to common/kernel/bits.cc diff --git a/common/bits.h b/common/kernel/bits.h similarity index 100% rename from common/bits.h rename to common/kernel/bits.h diff --git a/common/chain_utils.h b/common/kernel/chain_utils.h similarity index 100% rename from common/chain_utils.h rename to common/kernel/chain_utils.h diff --git a/common/command.cc b/common/kernel/command.cc similarity index 100% rename from common/command.cc rename to common/kernel/command.cc diff --git a/common/command.h b/common/kernel/command.h similarity index 100% rename from common/command.h rename to common/kernel/command.h diff --git a/common/constraints.h b/common/kernel/constraints.h similarity index 100% rename from common/constraints.h rename to common/kernel/constraints.h diff --git a/common/constraints.impl.h b/common/kernel/constraints.impl.h similarity index 100% rename from common/constraints.impl.h rename to common/kernel/constraints.impl.h diff --git a/common/context.cc b/common/kernel/context.cc similarity index 100% rename from common/context.cc rename to common/kernel/context.cc diff --git a/common/context.h b/common/kernel/context.h similarity index 100% rename from common/context.h rename to common/kernel/context.h diff --git a/common/design_utils.cc b/common/kernel/design_utils.cc similarity index 100% rename from common/design_utils.cc rename to common/kernel/design_utils.cc diff --git a/common/design_utils.h b/common/kernel/design_utils.h similarity index 100% rename from common/design_utils.h rename to common/kernel/design_utils.h diff --git a/common/deterministic_rng.h b/common/kernel/deterministic_rng.h similarity index 100% rename from common/deterministic_rng.h rename to common/kernel/deterministic_rng.h diff --git a/common/dynamic_bitarray.h b/common/kernel/dynamic_bitarray.h similarity index 100% rename from common/dynamic_bitarray.h rename to common/kernel/dynamic_bitarray.h diff --git a/common/embed.cc b/common/kernel/embed.cc similarity index 100% rename from common/embed.cc rename to common/kernel/embed.cc diff --git a/common/embed.h b/common/kernel/embed.h similarity index 100% rename from common/embed.h rename to common/kernel/embed.h diff --git a/common/exclusive_state_groups.h b/common/kernel/exclusive_state_groups.h similarity index 100% rename from common/exclusive_state_groups.h rename to common/kernel/exclusive_state_groups.h diff --git a/common/exclusive_state_groups.impl.h b/common/kernel/exclusive_state_groups.impl.h similarity index 100% rename from common/exclusive_state_groups.impl.h rename to common/kernel/exclusive_state_groups.impl.h diff --git a/common/handle_error.cc b/common/kernel/handle_error.cc similarity index 100% rename from common/handle_error.cc rename to common/kernel/handle_error.cc diff --git a/common/hashlib.h b/common/kernel/hashlib.h similarity index 100% rename from common/hashlib.h rename to common/kernel/hashlib.h diff --git a/common/idstring.cc b/common/kernel/idstring.cc similarity index 100% rename from common/idstring.cc rename to common/kernel/idstring.cc diff --git a/common/idstring.h b/common/kernel/idstring.h similarity index 100% rename from common/idstring.h rename to common/kernel/idstring.h diff --git a/common/idstringlist.cc b/common/kernel/idstringlist.cc similarity index 100% rename from common/idstringlist.cc rename to common/kernel/idstringlist.cc diff --git a/common/idstringlist.h b/common/kernel/idstringlist.h similarity index 100% rename from common/idstringlist.h rename to common/kernel/idstringlist.h diff --git a/common/indexed_store.h b/common/kernel/indexed_store.h similarity index 100% rename from common/indexed_store.h rename to common/kernel/indexed_store.h diff --git a/common/log.cc b/common/kernel/log.cc similarity index 100% rename from common/log.cc rename to common/kernel/log.cc diff --git a/common/log.h b/common/kernel/log.h similarity index 100% rename from common/log.h rename to common/kernel/log.h diff --git a/common/nextpnr.cc b/common/kernel/nextpnr.cc similarity index 100% rename from common/nextpnr.cc rename to common/kernel/nextpnr.cc diff --git a/common/nextpnr.h b/common/kernel/nextpnr.h similarity index 100% rename from common/nextpnr.h rename to common/kernel/nextpnr.h diff --git a/common/nextpnr_assertions.cc b/common/kernel/nextpnr_assertions.cc similarity index 100% rename from common/nextpnr_assertions.cc rename to common/kernel/nextpnr_assertions.cc diff --git a/common/nextpnr_assertions.h b/common/kernel/nextpnr_assertions.h similarity index 100% rename from common/nextpnr_assertions.h rename to common/kernel/nextpnr_assertions.h diff --git a/common/nextpnr_base_types.h b/common/kernel/nextpnr_base_types.h similarity index 100% rename from common/nextpnr_base_types.h rename to common/kernel/nextpnr_base_types.h diff --git a/common/nextpnr_namespaces.cc b/common/kernel/nextpnr_namespaces.cc similarity index 100% rename from common/nextpnr_namespaces.cc rename to common/kernel/nextpnr_namespaces.cc diff --git a/common/nextpnr_namespaces.h b/common/kernel/nextpnr_namespaces.h similarity index 100% rename from common/nextpnr_namespaces.h rename to common/kernel/nextpnr_namespaces.h diff --git a/common/nextpnr_types.cc b/common/kernel/nextpnr_types.cc similarity index 100% rename from common/nextpnr_types.cc rename to common/kernel/nextpnr_types.cc diff --git a/common/nextpnr_types.h b/common/kernel/nextpnr_types.h similarity index 100% rename from common/nextpnr_types.h rename to common/kernel/nextpnr_types.h diff --git a/common/property.cc b/common/kernel/property.cc similarity index 100% rename from common/property.cc rename to common/kernel/property.cc diff --git a/common/property.h b/common/kernel/property.h similarity index 100% rename from common/property.h rename to common/kernel/property.h diff --git a/common/pybindings.cc b/common/kernel/pybindings.cc similarity index 100% rename from common/pybindings.cc rename to common/kernel/pybindings.cc diff --git a/common/pybindings.h b/common/kernel/pybindings.h similarity index 100% rename from common/pybindings.h rename to common/kernel/pybindings.h diff --git a/common/pycontainers.h b/common/kernel/pycontainers.h similarity index 100% rename from common/pycontainers.h rename to common/kernel/pycontainers.h diff --git a/common/pywrappers.h b/common/kernel/pywrappers.h similarity index 100% rename from common/pywrappers.h rename to common/kernel/pywrappers.h diff --git a/common/relptr.h b/common/kernel/relptr.h similarity index 100% rename from common/relptr.h rename to common/kernel/relptr.h diff --git a/common/report.cc b/common/kernel/report.cc similarity index 100% rename from common/report.cc rename to common/kernel/report.cc diff --git a/common/scope_lock.h b/common/kernel/scope_lock.h similarity index 100% rename from common/scope_lock.h rename to common/kernel/scope_lock.h diff --git a/common/sdf.cc b/common/kernel/sdf.cc similarity index 100% rename from common/sdf.cc rename to common/kernel/sdf.cc diff --git a/common/sso_array.h b/common/kernel/sso_array.h similarity index 100% rename from common/sso_array.h rename to common/kernel/sso_array.h diff --git a/common/str_ring_buffer.cc b/common/kernel/str_ring_buffer.cc similarity index 100% rename from common/str_ring_buffer.cc rename to common/kernel/str_ring_buffer.cc diff --git a/common/str_ring_buffer.h b/common/kernel/str_ring_buffer.h similarity index 100% rename from common/str_ring_buffer.h rename to common/kernel/str_ring_buffer.h diff --git a/common/svg.cc b/common/kernel/svg.cc similarity index 100% rename from common/svg.cc rename to common/kernel/svg.cc diff --git a/common/timing.cc b/common/kernel/timing.cc similarity index 100% rename from common/timing.cc rename to common/kernel/timing.cc diff --git a/common/timing.h b/common/kernel/timing.h similarity index 100% rename from common/timing.h rename to common/kernel/timing.h diff --git a/common/util.h b/common/kernel/util.h similarity index 100% rename from common/util.h rename to common/kernel/util.h diff --git a/common/fast_bels.h b/common/place/fast_bels.h similarity index 100% rename from common/fast_bels.h rename to common/place/fast_bels.h diff --git a/common/parallel_refine.cc b/common/place/parallel_refine.cc similarity index 100% rename from common/parallel_refine.cc rename to common/place/parallel_refine.cc diff --git a/common/parallel_refine.h b/common/place/parallel_refine.h similarity index 100% rename from common/parallel_refine.h rename to common/place/parallel_refine.h diff --git a/common/place_common.cc b/common/place/place_common.cc similarity index 100% rename from common/place_common.cc rename to common/place/place_common.cc diff --git a/common/place_common.h b/common/place/place_common.h similarity index 100% rename from common/place_common.h rename to common/place/place_common.h diff --git a/common/placer1.cc b/common/place/placer1.cc similarity index 100% rename from common/placer1.cc rename to common/place/placer1.cc diff --git a/common/placer1.h b/common/place/placer1.h similarity index 100% rename from common/placer1.h rename to common/place/placer1.h diff --git a/common/placer_heap.cc b/common/place/placer_heap.cc similarity index 100% rename from common/placer_heap.cc rename to common/place/placer_heap.cc diff --git a/common/placer_heap.h b/common/place/placer_heap.h similarity index 100% rename from common/placer_heap.h rename to common/place/placer_heap.h diff --git a/common/timing_opt.cc b/common/place/timing_opt.cc similarity index 100% rename from common/timing_opt.cc rename to common/place/timing_opt.cc diff --git a/common/timing_opt.h b/common/place/timing_opt.h similarity index 100% rename from common/timing_opt.h rename to common/place/timing_opt.h diff --git a/common/router1.cc b/common/route/router1.cc similarity index 100% rename from common/router1.cc rename to common/route/router1.cc diff --git a/common/router1.h b/common/route/router1.h similarity index 100% rename from common/router1.h rename to common/route/router1.h diff --git a/common/router2.cc b/common/route/router2.cc similarity index 100% rename from common/router2.cc rename to common/route/router2.cc diff --git a/common/router2.h b/common/route/router2.h similarity index 100% rename from common/router2.h rename to common/route/router2.h