Skip to content

Commit a0b5dd2

Browse files
committed
initial bunch of code from old par router
1 parent 03f3dec commit a0b5dd2

30 files changed

+3243
-117
lines changed

CMakeLists.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -250,6 +250,14 @@ endforeach()
250250
#
251251

252252
set(SANITIZE_FLAGS "")
253+
254+
if(VTR_ENABLE_TSAN)
255+
#Enable sanitizers
256+
# -fuse-ld=gold force the gold linker to be used (required for sanitizers, but not enabled by default on some systems)
257+
set(SANITIZE_FLAGS "${SANITIZE_FLAGS} -fsanitize=thread")
258+
message(STATUS "ThreadSanitizer: Enabled")
259+
endif()
260+
253261
if(VTR_ENABLE_SANITIZE)
254262
#Enable sanitizers
255263
# -fuse-ld=gold force the gold linker to be used (required for sanitizers, but not enabled by default on some systems)
Lines changed: 256 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,256 @@
1+
# CMAKE generated file: DO NOT EDIT!
2+
# Generated by "Unix Makefiles" Generator, CMake Version 3.10
3+
4+
# Default target executed when no arguments are given to make.
5+
default_target: all
6+
7+
.PHONY : default_target
8+
9+
# Allow only one "make -f Makefile2" at a time, but pass parallelism.
10+
.NOTPARALLEL:
11+
12+
13+
#=============================================================================
14+
# Special targets provided by cmake.
15+
16+
# Disable implicit rules so canonical targets will work.
17+
.SUFFIXES:
18+
19+
20+
# Remove some rules from gmake that .SUFFIXES does not remove.
21+
SUFFIXES =
22+
23+
.SUFFIXES: .hpux_make_needs_suffix_list
24+
25+
26+
# Suppress display of executed commands.
27+
$(VERBOSE).SILENT:
28+
29+
30+
# A target that is always out of date.
31+
cmake_force:
32+
33+
.PHONY : cmake_force
34+
35+
#=============================================================================
36+
# Set environment variables for the build.
37+
38+
# The shell in which to execute make rules.
39+
SHELL = /bin/sh
40+
41+
# The CMake executable.
42+
CMAKE_COMMAND = /usr/bin/cmake
43+
44+
# The command to remove a file.
45+
RM = /usr/bin/cmake -E remove -f
46+
47+
# Escaping for special characters.
48+
EQUALS = =
49+
50+
# The top-level source directory on which CMake was run.
51+
CMAKE_SOURCE_DIR = /home/kosarfah/vtr-verilog-to-routing/libs/EXTERNAL/libtatum/tatum_test
52+
53+
# The top-level build directory on which CMake was run.
54+
CMAKE_BINARY_DIR = /home/kosarfah/vtr-verilog-to-routing/libs/EXTERNAL/libtatum/tatum_test
55+
56+
#=============================================================================
57+
# Targets provided globally by CMake.
58+
59+
# Special rule for the target rebuild_cache
60+
rebuild_cache:
61+
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
62+
/usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
63+
.PHONY : rebuild_cache
64+
65+
# Special rule for the target rebuild_cache
66+
rebuild_cache/fast: rebuild_cache
67+
68+
.PHONY : rebuild_cache/fast
69+
70+
# Special rule for the target edit_cache
71+
edit_cache:
72+
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
73+
/usr/bin/ccmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
74+
.PHONY : edit_cache
75+
76+
# Special rule for the target edit_cache
77+
edit_cache/fast: edit_cache
78+
79+
.PHONY : edit_cache/fast
80+
81+
# The main all target
82+
all: cmake_check_build_system
83+
$(CMAKE_COMMAND) -E cmake_progress_start /home/kosarfah/vtr-verilog-to-routing/libs/EXTERNAL/libtatum/tatum_test/CMakeFiles /home/kosarfah/vtr-verilog-to-routing/libs/EXTERNAL/libtatum/tatum_test/CMakeFiles/progress.marks
84+
$(MAKE) -f CMakeFiles/Makefile2 all
85+
$(CMAKE_COMMAND) -E cmake_progress_start /home/kosarfah/vtr-verilog-to-routing/libs/EXTERNAL/libtatum/tatum_test/CMakeFiles 0
86+
.PHONY : all
87+
88+
# The main clean target
89+
clean:
90+
$(MAKE) -f CMakeFiles/Makefile2 clean
91+
.PHONY : clean
92+
93+
# The main clean target
94+
clean/fast: clean
95+
96+
.PHONY : clean/fast
97+
98+
# Prepare targets for installation.
99+
preinstall: all
100+
$(MAKE) -f CMakeFiles/Makefile2 preinstall
101+
.PHONY : preinstall
102+
103+
# Prepare targets for installation.
104+
preinstall/fast:
105+
$(MAKE) -f CMakeFiles/Makefile2 preinstall
106+
.PHONY : preinstall/fast
107+
108+
# clear depends
109+
depend:
110+
$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
111+
.PHONY : depend
112+
113+
#=============================================================================
114+
# Target rules for targets named tatum_test
115+
116+
# Build rule for target.
117+
tatum_test: cmake_check_build_system
118+
$(MAKE) -f CMakeFiles/Makefile2 tatum_test
119+
.PHONY : tatum_test
120+
121+
# fast build rule for target.
122+
tatum_test/fast:
123+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/build
124+
.PHONY : tatum_test/fast
125+
126+
# target to build an object file
127+
CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.o:
128+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.o
129+
.PHONY : CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.o
130+
131+
# target to preprocess a source file
132+
CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.i:
133+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.i
134+
.PHONY : CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.i
135+
136+
# target to generate assembly for a file
137+
CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.s:
138+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.s
139+
.PHONY : CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.s
140+
141+
# target to build an object file
142+
echo_loader.o:
143+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/echo_loader.o
144+
.PHONY : echo_loader.o
145+
146+
# target to preprocess a source file
147+
echo_loader.i:
148+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/echo_loader.i
149+
.PHONY : echo_loader.i
150+
151+
# target to generate assembly for a file
152+
echo_loader.s:
153+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/echo_loader.s
154+
.PHONY : echo_loader.s
155+
156+
# target to build an object file
157+
main.o:
158+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/main.o
159+
.PHONY : main.o
160+
161+
# target to preprocess a source file
162+
main.i:
163+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/main.i
164+
.PHONY : main.i
165+
166+
# target to generate assembly for a file
167+
main.s:
168+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/main.s
169+
.PHONY : main.s
170+
171+
# target to build an object file
172+
profile.o:
173+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/profile.o
174+
.PHONY : profile.o
175+
176+
# target to preprocess a source file
177+
profile.i:
178+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/profile.i
179+
.PHONY : profile.i
180+
181+
# target to generate assembly for a file
182+
profile.s:
183+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/profile.s
184+
.PHONY : profile.s
185+
186+
# target to build an object file
187+
util.o:
188+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/util.o
189+
.PHONY : util.o
190+
191+
# target to preprocess a source file
192+
util.i:
193+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/util.i
194+
.PHONY : util.i
195+
196+
# target to generate assembly for a file
197+
util.s:
198+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/util.s
199+
.PHONY : util.s
200+
201+
# target to build an object file
202+
verify.o:
203+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/verify.o
204+
.PHONY : verify.o
205+
206+
# target to preprocess a source file
207+
verify.i:
208+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/verify.i
209+
.PHONY : verify.i
210+
211+
# target to generate assembly for a file
212+
verify.s:
213+
$(MAKE) -f CMakeFiles/tatum_test.dir/build.make CMakeFiles/tatum_test.dir/verify.s
214+
.PHONY : verify.s
215+
216+
# Help Target
217+
help:
218+
@echo "The following are some of the valid targets for this Makefile:"
219+
@echo "... all (the default if no target is provided)"
220+
@echo "... clean"
221+
@echo "... depend"
222+
@echo "... rebuild_cache"
223+
@echo "... edit_cache"
224+
@echo "... tatum_test"
225+
@echo "... CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.o"
226+
@echo "... CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.i"
227+
@echo "... CMakeFiles/3.10.2/CompilerIdCXX/CMakeCXXCompilerId.s"
228+
@echo "... echo_loader.o"
229+
@echo "... echo_loader.i"
230+
@echo "... echo_loader.s"
231+
@echo "... main.o"
232+
@echo "... main.i"
233+
@echo "... main.s"
234+
@echo "... profile.o"
235+
@echo "... profile.i"
236+
@echo "... profile.s"
237+
@echo "... util.o"
238+
@echo "... util.i"
239+
@echo "... util.s"
240+
@echo "... verify.o"
241+
@echo "... verify.i"
242+
@echo "... verify.s"
243+
.PHONY : help
244+
245+
246+
247+
#=============================================================================
248+
# Special targets to cleanup operation of make.
249+
250+
# Special rule to run CMake to check the build system integrity.
251+
# No rule that depends on this can have commands that come from listfiles
252+
# because they might be regenerated.
253+
cmake_check_build_system:
254+
$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
255+
.PHONY : cmake_check_build_system
256+
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# Install script for directory: /home/kosarfah/vtr-verilog-to-routing/libs/EXTERNAL/libtatum/tatum_test
2+
3+
# Set the install prefix
4+
if(NOT DEFINED CMAKE_INSTALL_PREFIX)
5+
set(CMAKE_INSTALL_PREFIX "/usr/local")
6+
endif()
7+
string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
8+
9+
# Set the install configuration name.
10+
if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
11+
if(BUILD_TYPE)
12+
string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
13+
CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
14+
else()
15+
set(CMAKE_INSTALL_CONFIG_NAME "")
16+
endif()
17+
message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
18+
endif()
19+
20+
# Set the component getting installed.
21+
if(NOT CMAKE_INSTALL_COMPONENT)
22+
if(COMPONENT)
23+
message(STATUS "Install component: \"${COMPONENT}\"")
24+
set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
25+
else()
26+
set(CMAKE_INSTALL_COMPONENT)
27+
endif()
28+
endif()
29+
30+
# Install shared libraries without execute permission?
31+
if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
32+
set(CMAKE_INSTALL_SO_NO_EXE "1")
33+
endif()
34+
35+
# Is this installation the result of a crosscompile?
36+
if(NOT DEFINED CMAKE_CROSSCOMPILING)
37+
set(CMAKE_CROSSCOMPILING "FALSE")
38+
endif()
39+
40+
if(CMAKE_INSTALL_COMPONENT)
41+
set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
42+
else()
43+
set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
44+
endif()
45+
46+
string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
47+
"${CMAKE_INSTALL_MANIFEST_FILES}")
48+
file(WRITE "/home/kosarfah/vtr-verilog-to-routing/libs/EXTERNAL/libtatum/tatum_test/${CMAKE_INSTALL_MANIFEST}"
49+
"${CMAKE_INSTALL_MANIFEST_CONTENT}")

libs/librrgraph/src/base/SCHEMA_GENERATOR.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
The rrgraph reader and writer is now generated via uxsdcxx and the
44
`rr_graph.xsd` file. The interface between the generated code and the VPR is
5-
mediated via RrGraphBase located in `rr_graph_uxsdcxx_interface.h`.
5+
mediated via RrGraphBase located in `gen/rr_graph_uxsdcxx_interface.h`.
66

77
If `rr_graph.xsd` is modified, then the following files must be updated:
88

libs/libvtrutil/src/vtr_strong_id.h

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* @file
55
* @brief This header provides the StrongId class.
66
*
7-
* It is template which can be used to create strong Id's
7+
* It is template which can be used to create strong Id's
88
* which avoid accidental type conversions (generating compiler errors when they occur).
99
*
1010
* Motivation
@@ -146,6 +146,7 @@
146146
#include <type_traits> //for std::is_integral
147147
#include <cstddef> //for std::size_t
148148
#include <functional> //for std::hash
149+
#include <ostream> //for std::ostream
149150

150151
namespace vtr {
151152

@@ -168,6 +169,9 @@ bool operator!=(const StrongId<tag, T, sentinel>& lhs, const StrongId<tag, T, se
168169
template<typename tag, typename T, T sentinel>
169170
bool operator<(const StrongId<tag, T, sentinel>& lhs, const StrongId<tag, T, sentinel>& rhs);
170171

172+
template<typename tag, typename T, T sentinel>
173+
std::ostream& operator<<(std::ostream& out, const StrongId<tag, T, sentinel>& rhs);
174+
171175
///@brief Class template definition with default template parameters
172176
template<typename tag, typename T = int, T sentinel = T(-1)>
173177
class StrongId {
@@ -197,7 +201,7 @@ class StrongId {
197201
friend std::hash<StrongId<tag, T, sentinel>>;
198202

199203
/**
200-
* @brief To enable comparisions between Ids
204+
* @brief To enable comparisons between Ids
201205
*
202206
* Note that since these are templated functions we provide an empty set of template parameters
203207
* after the function name (i.e. <>)
@@ -208,6 +212,11 @@ class StrongId {
208212
///@brief < operator
209213
friend bool operator< <>(const StrongId<tag, T, sentinel>& lhs, const StrongId<tag, T, sentinel>& rhs);
210214

215+
/**
216+
* @brief to be able to print them out
217+
*/
218+
friend std::ostream& operator<< <>(std::ostream& out, const StrongId<tag, T, sentinel>& rhs);
219+
211220
private:
212221
T id_;
213222
};
@@ -230,6 +239,12 @@ bool operator<(const StrongId<tag, T, sentinel>& lhs, const StrongId<tag, T, sen
230239
return lhs.id_ < rhs.id_;
231240
}
232241

242+
///@brief operator << Needed for print-debugging
243+
template<typename tag, typename T, T sentinel>
244+
std::ostream& operator<<(std::ostream& out, const StrongId<tag, T, sentinel>& rhs) {
245+
out << rhs.id_;
246+
return out;
247+
}
233248
} //namespace vtr
234249

235250
///@brief Specialize std::hash for StrongId's (needed for std::unordered_map-like containers)

0 commit comments

Comments
 (0)