Commit Graph

356 Commits

Author SHA1 Message Date
Wilson Snyder
95b66feeb8 devel release 2020-02-08 09:16:35 -05:00
Wilson Snyder
890cecc15b Version bump 2020-02-08 09:03:51 -05:00
Geza Lore
f00ff61559 Link Verilator binary partially statically, Closes #2146.
The build is now by default configured to link performance critical
libraries (libgcc, libstdc++, libtcmalloc) statically. This improves
Verilation speed by between 4.5-7% based on my measurements as it
eliminates approx 20% of the mispredicted branches from the execution.
With partial static linking, the size of the .text section in
verilator_bin is increased by about 14%, and the binary is itself only
about 800KB bigger on disk, so hopefully this is not a big issue in
exchange for the faster compilation speed. A configure option
"--disable-partial-static" is provided to restore the old behaviour of
linking everything dynamically.

Note: This patch also changes to use libtcmalloc_minimal, which is all
we really need and itself has fewer dependencies.
2020-01-31 19:13:55 -05:00
Wilson Snyder
9a6bc3ddcf Commentary 2020-01-30 19:52:58 -05:00
Geza Lore
7ab2bdb6bb Support libgoogle-perftools-dev's libtcmalloc if available. #2137.
As Verilator continuously allocates and releases small objects (e.g.:
AstNode, V3GraphVertex, V3GraphEdge), it spends a significant amount of
time in malloc/free and friends. This patch adds the --enable-tcmalloc
configure option to link Verilator against the high performance malloc
implementation library libtcmalloc. The default is to use libtcmalloc if
available on the system. Note that there are no source code change, we
are simply replacing the standard library memory allocation functions.

Measured major compilation speed improvement of 27% when running
Verilator with -O3 on a large design.
2020-01-23 17:32:19 -05:00
Wilson Snyder
fe9cf9bd42 devel release 2020-01-11 09:08:33 -05:00
Wilson Snyder
0c99bee4b1 Version bump 2020-01-11 06:54:36 -05:00
Wilson Snyder
f23fe8fd84 Update copyright year. 2020-01-06 18:05:53 -05:00
Wilson Snyder
3be0eea995 devel release 2019-12-08 13:50:14 -05:00
Wilson Snyder
44ce83cd8e Version bump 2019-12-08 07:58:47 -05:00
Wilson Snyder
6ce81698e7 devel release 2019-11-10 14:25:54 -05:00
Wilson Snyder
30be381aa8 Version bump 2019-11-10 14:13:46 -05:00
Wilson Snyder
5811ec07e6 Update URLs to https://verilator.org 2019-11-07 22:33:59 -05:00
Wilson Snyder
31a6a968cc Speedup compiler flags for Ubuntu 19.10. 2019-10-17 20:43:45 -04:00
Patrick Stewart
1e4f471049 Add cmake support, bug1363.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-10-17 19:44:10 -04:00
Wilson Snyder
763b9909f1 devel release 2019-10-06 10:04:45 -04:00
Wilson Snyder
dfcd412e5f Version bump 2019-10-06 09:40:36 -04:00
Wilson Snyder
4c0f95af10 devel release 2019-08-29 19:12:47 -04:00
Wilson Snyder
35fe205fd6 Version bump 2019-08-29 18:58:38 -04:00
Todd Strader
a3fd105acb Add more Travis coverage 2019-07-18 05:31:02 -04:00
Gianfranco Costamagna
07ae7146e3 Honour system flags, this makes debug flags being injected correctly.
Signed-off-by: Wilson Snyder <wsnyder@wsnyder.org>
2019-07-06 13:02:36 -04:00
Wilson Snyder
89c2a6070a devel release 2019-06-16 10:01:09 -04:00
Wilson Snyder
c53ea10c75 Version bump 2019-06-16 09:30:56 -04:00
Wilson Snyder
b6c905dffc Move files into docs directory. 2019-06-13 07:19:44 -04:00
Wilson Snyder
00efa05b50 devel release 2019-05-08 21:39:23 -04:00
Wilson Snyder
cc1d380864 Version bump 2019-05-08 21:15:56 -04:00
Wilson Snyder
32c1e38b84 devel release 2019-03-23 21:14:30 -04:00
Wilson Snyder
a7aa8820e1 Version bump 2019-03-23 21:00:07 -04:00
Wilson Snyder
426ed8589b devel release 2019-01-28 07:30:42 -05:00
Wilson Snyder
44e53129a0 Version bump 2019-01-27 21:31:05 -05:00
Wilson Snyder
8a4aeddbb0 Copyright year update. 2019-01-03 19:17:22 -05:00
Wilson Snyder
83b5c981d0 devel release 2018-12-01 15:07:31 -05:00
Wilson Snyder
2685037ca2 Version bump 2018-12-01 14:52:21 -05:00
Wilson Snyder
160505c5a4 devel release 2018-10-27 08:48:12 -04:00
Wilson Snyder
3df9b4230b Version bump 2018-10-27 08:27:10 -04:00
Wilson Snyder
fc0cf00b1d devel release 2018-10-06 10:12:31 -04:00
Wilson Snyder
4333c201f1 Version bump 2018-10-06 09:51:57 -04:00
Kevin Kiningham
d4159811d2 configure: Fix test for c++03 etc. 2018-09-17 21:47:35 -04:00
Wilson Snyder
cc9f7d1ac3 devel release 2018-09-17 06:24:18 -04:00
Wilson Snyder
94c295f26a Version bump 2018-09-16 17:02:50 -04:00
Wilson Snyder
7a8c5ecfe1 Disable GCC2017, bug1339. 2018-09-03 08:19:43 -04:00
Wilson Snyder
aabb7394c3 Merge from master 2018-07-23 19:05:17 -04:00
Wilson Snyder
8e646bc55f configure: Add URL 2018-07-22 19:44:03 -04:00
Wilson Snyder
2f18a52118 Ignore automake flags passed by Ubuntu builds 2018-07-04 17:09:59 -04:00
Wilson Snyder
129610821f Ignore automake flags passed by Ubuntu builds 2018-07-03 21:34:50 -04:00
Wilson Snyder
02738ec4ea Warn if using pre-C++11 so find out who needs it. 2018-06-26 17:57:57 -04:00
Wilson Snyder
45eddfb335 Warn if using pre-C++11 so find out who needs it. 2018-06-26 07:33:55 -04:00
Wilson Snyder
a15e6f68dd devel release 2018-06-12 21:22:01 -04:00
Wilson Snyder
77e7e2bf1c Version bump 2018-06-12 21:20:12 -04:00
Wilson Snyder
4abf5be9ce Detect linker requirements for multithreaded runtime. 2018-05-13 19:47:35 -04:00
Wilson Snyder
e3354a0191 devel release 2018-03-17 12:01:59 -04:00
Wilson Snyder
df3d1a4da9 Version bump 2018-03-17 11:56:37 -04:00
Wilson Snyder
f0ba17a19b Merge from master. 2018-02-27 07:24:31 -05:00
Wilson Snyder
32859d9fc2 Fix GCC 8.0 issues 2018-02-07 18:58:21 -05:00
Wilson Snyder
597d28b505 Fix internals to make null-pointer-check clean. Also add more const's. No functional change intended, but likely something will break. 2018-02-01 21:32:58 -05:00
Wilson Snyder
33d6205e20 Prepare for version 4 branch 2018-02-01 21:21:21 -05:00
Wilson Snyder
1b12800b8f devel release 2018-02-01 20:14:40 -05:00
Wilson Snyder
13d11b037a Version bump 2018-02-01 20:09:58 -05:00
Wilson Snyder
e07ee559a0 Tests: Fix gcc7.2 warnings. 2018-01-31 19:27:42 -05:00
Wilson Snyder
7ee6efab74 devel release 2018-01-02 18:13:45 -05:00
Wilson Snyder
3788e90644 Version bump 2018-01-02 18:06:05 -05:00
Wilson Snyder
8e65d93d6d Copyright year update. No functional change. 2018-01-02 18:05:06 -05:00
Wilson Snyder
339a7640a8 devel release 2017-11-27 18:50:14 -05:00
Wilson Snyder
0478dbdd1f Version bump 2017-11-25 15:42:11 -05:00
Wilson Snyder
d542921ff7 Tests: Detect old GCC and skip unsupported tests. 2017-10-26 21:48:45 -04:00
Wilson Snyder
b90f383cfe Add --threads option through to makefiles, unadvertised for now. 2017-10-21 16:41:43 -04:00
Wilson Snyder
f5dfa1e9c3 Fix MacOS portability, bug1232. 2017-10-15 10:36:50 -04:00
Wilson Snyder
5fb21c2159 devel release 2017-10-14 20:47:25 -04:00
Wilson Snyder
0e9be8eea0 Version bump 2017-10-14 16:15:07 -04:00
Wilson Snyder
a23a5505c4 configure: Check compiler works. 2017-10-14 13:20:58 -04:00
Wilson Snyder
f81daac9c0 Fix MacOS portability, bug1231. 2017-10-14 12:56:16 -04:00
Wilson Snyder
db8e8392fa Fix MacOS portability, bug1230. 2017-10-14 09:00:39 -04:00
Wilson Snyder
de35c90847 Fix float-conversion warning, bug1229. 2017-10-11 19:01:37 -04:00
Wilson Snyder
3c1b82255e Change VL_THREADED to use C++11, and compute and test related GCC flags automatically 2017-10-07 21:29:57 -04:00
Wilson Snyder
3261a45ec1 configure: Add new _MY_CXX_CHECK_SET. No functional change. 2017-10-07 15:25:23 -04:00
Wilson Snyder
cdbae456d5 devel release 2017-09-23 10:11:06 -04:00
Wilson Snyder
379177d2f4 Version bump 2017-09-23 10:04:52 -04:00
Wilson Snyder
778564e63b Compling: Turn on -Wextra when using --enable-ccwarn 2017-09-14 23:28:02 -04:00
Wilson Snyder
c28a6eef3b Fix whitespace issues, bug1203. 2017-09-11 19:18:58 -04:00
Wilson Snyder
17fed3fedd devel release 2017-09-07 21:15:48 -04:00
Wilson Snyder
1448cc56fc Version bump 2017-09-07 21:10:22 -04:00
Wilson Snyder
48778d0a77 devel release 2017-08-28 22:51:53 -04:00
Wilson Snyder
42d2cbad41 Version bump 2017-08-28 22:46:43 -04:00
Wilson Snyder
f13fb330ed Reenable -Wchar-subscripts and sort flag list 2017-08-14 20:15:24 -04:00
Wilson Snyder
d4bae48ca2 Fix GCC7.1 warning on new alignment 2017-08-14 19:59:21 -04:00
Wilson Snyder
331ea5116f devel release 2017-06-22 18:36:29 -04:00
Wilson Snyder
1da5a33f88 Version bump 2017-06-22 18:31:22 -04:00
Wilson Snyder
a01c96140b devel release 2017-05-30 22:04:58 -04:00
Wilson Snyder
02530172e7 Version bump 2017-05-30 22:01:21 -04:00
Wilson Snyder
23a3271c06 devel release 2017-04-02 08:49:31 -04:00
Wilson Snyder
f4a5aa2e94 Version bump 2017-04-02 08:43:53 -04:00
Wilson Snyder
6a238b0514 devel release 2017-01-26 22:41:05 -05:00
Wilson Snyder
e6d7e7e329 Version bump 2017-01-15 12:13:13 -05:00
Wilson Snyder
b0de0b1176 devel release 2016-11-25 10:55:28 -05:00
Wilson Snyder
c72d473e96 Version bump 2016-11-25 10:35:45 -05:00
Wilson Snyder
c7a2138ece Commentary 2016-11-18 20:31:41 -05:00
Wilson Snyder
9e38ed9a39 configure: Better prune unknwon gcc -Wno- flags. 2016-11-18 19:27:29 -05:00
Wilson Snyder
d933f33bdb devel release 2016-10-14 19:51:30 -04:00
Wilson Snyder
813d62005d Version bump 2016-10-14 19:42:18 -04:00
Wilson Snyder
e1755ea6a8 devel release 2016-07-30 10:18:52 -04:00
Wilson Snyder
b4a7e4697e Version bump 2016-07-30 10:10:35 -04:00
Wilson Snyder
171c175e54 devel release 2016-05-18 21:15:33 -04:00
Wilson Snyder
675cbce8cb Version bump 2016-05-18 21:10:56 -04:00
Wilson Snyder
bc58245abf Fix core dump on Arch Linux/GCC 6.1.1, bug1058. 2016-05-14 17:56:04 -04:00
Wilson Snyder
b840334ad2 devel release 2016-03-01 19:14:04 -05:00
Wilson Snyder
acff683e8e Version bump 2016-03-01 19:12:14 -05:00
Wilson Snyder
ca532d23f0 Suppress null compares to avoid compile errors until bug1030 fixed 2016-02-08 22:16:05 -05:00
Wilson Snyder
b738d1960a Copyright year update 2016-01-06 20:36:41 -05:00
Wilson Snyder
38f5b780d7 devel release 2016-01-06 20:33:25 -05:00
Wilson Snyder
fa9dac29e8 Version bump 2015-12-19 10:26:14 -05:00
Wilson Snyder
3df23a148a devel release 2015-11-01 08:20:17 -05:00
Wilson Snyder
14b8efe4bb Version bump 2015-11-01 08:14:44 -05:00
Wilson Snyder
776d8edf52 devel release 2015-08-12 21:42:08 -04:00
Wilson Snyder
5f21385e41 Version bump - commentary fix 2015-08-12 21:40:55 -04:00
Wilson Snyder
94fed93f54 Version bump 2015-08-12 21:34:59 -04:00
Wilson Snyder
466909b3d9 devel release 2015-06-06 14:00:23 -04:00
Wilson Snyder
0d4305192a Version bump 2015-06-06 13:58:26 -04:00
Wilson Snyder
1d6bcda014 Add pkg-config .pc file, bug919. 2015-05-13 21:21:29 -04:00
Wilson Snyder
cb95cf4745 devel release 2015-04-09 19:00:02 -04:00
Wilson Snyder
793c974480 Version bump 2015-04-05 10:56:20 -04:00
Wilson Snyder
04e7b3bd4d devel release 2015-02-12 20:39:20 -05:00
Wilson Snyder
9ebb37b6a5 Version bump 2015-02-12 20:37:44 -05:00
Wilson Snyder
108c0f6bb8 Fix configure selecting switches that give warnings. 2015-02-11 21:24:01 -05:00
Wilson Snyder
32a76c5255 Fix clang warnings. 2015-02-10 22:38:05 -05:00
Wilson Snyder
4c91ade61d Copyright year update 2015-01-07 18:25:53 -05:00
Wilson Snyder
0206767478 devel release 2014-12-20 16:49:42 -05:00
Wilson Snyder
41701673a0 devel release 2014-11-15 08:43:27 -05:00
Wilson Snyder
55f0d4ddd8 Version bump 2014-11-15 08:38:44 -05:00
Wilson Snyder
6ba90e3a50 devel release 2014-09-21 09:06:40 -04:00
Wilson Snyder
e8edbad18c Version bump 2014-09-21 09:04:36 -04:00
Wilson Snyder
27af9b6b06 Fix clang warnings, bug818. 2014-09-11 21:28:53 -04:00
Wilson Snyder
3a56b5da47 devel release 2014-06-10 20:43:10 -04:00
Wilson Snyder
fedcb6d26a Version bump 2014-06-10 20:39:51 -04:00
Wilson Snyder
cd2d6575c6 devel release 2014-05-11 16:58:01 -04:00
Wilson Snyder
b46f656d17 Version bump. 2014-05-11 16:51:56 -04:00
Wilson Snyder
587c7c70f5 devel release 2014-03-11 19:52:28 -04:00
Wilson Snyder
749ff021b6 Version bump 2014-03-11 19:48:57 -04:00
Wilson Snyder
3a23afb0bc devel release 2014-01-20 21:55:27 -05:00
Wilson Snyder
470f12ff46 Version bump 2014-01-18 13:16:08 -05:00
Wilson Snyder
4422de0c6c Copyright year update. 2014-01-06 19:28:57 -05:00
Wilson Snyder
e69bf418de Fix --lint-only with MinGW, msg1283. 2013-11-29 08:28:48 -05:00
Wilson Snyder
0e1fcd38bb Version bump 2013-11-26 19:52:19 -05:00
Wilson Snyder
39c494260b devel release 2013-09-30 16:56:52 -04:00
Wilson Snyder
761b9c9290 Version bump 2013-09-30 16:53:45 -04:00
Wilson Snyder
d2b007005d devel release 2013-09-29 20:56:19 -04:00
Wilson Snyder
f1ef30a5bb Version bump 2013-09-29 20:52:29 -04:00
Wilson Snyder
d4e27b635f devel release 2013-08-15 08:43:37 -04:00
Wilson Snyder
c996d2870c Version bump 2013-08-15 08:39:46 -04:00
Wilson Snyder
9cb9f9c80b devel release 2013-06-02 14:52:19 -04:00
Wilson Snyder
7a65df7636 Version bump 2013-06-02 14:47:36 -04:00
Wilson Snyder
eab46d547d Version bump. 2013-06-02 14:38:53 -04:00
Wilson Snyder
20ea1ca018 devel release 2013-05-11 16:16:22 -04:00
Wilson Snyder
0abde90933 Version bump 2013-05-11 16:11:38 -04:00
Wilson Snyder
28eeec1cf4 devel release 2013-03-09 16:48:10 -05:00
Wilson Snyder
7d0dce3267 Version bump 2013-03-09 16:44:48 -05:00
Wilson Snyder
6cfcd50f12 devel release 2013-02-04 22:19:37 -05:00
Wilson Snyder
bcadb0b3b3 Version bump 2013-02-04 22:12:21 -05:00
Wilson Snyder
e7ba6ef492 Support VPI product info, warning calls, etc, bug588. 2013-01-17 21:40:37 -05:00
Wilson Snyder
786bc4b04f devel release 2013-01-09 22:27:36 -05:00
Wilson Snyder
5eca20f849 Version bump 2013-01-09 22:08:30 -05:00
Wilson Snyder
a8bbf7231b Copyright year update. 2013-01-01 09:42:59 -05:00
Wilson Snyder
4ffc48d194 devel release 2012-12-02 16:19:26 -05:00
Wilson Snyder
e602f7febc Version bump 2012-12-01 16:15:40 -05:00
Wilson Snyder
77ac76a158 devel release 2012-11-03 20:19:31 -04:00
Wilson Snyder
8108b97050 Version bump 2012-11-03 20:16:01 -04:00
Wilson Snyder
3d9540c58c devel release 2012-09-03 20:32:32 -04:00
Wilson Snyder
39724eb916 Version bump 2012-09-03 20:03:25 -04:00
Wilson Snyder
2a274f9c19 Devel version 2012-07-31 18:53:51 -04:00
Wilson Snyder
b4d5a20670 Version bump 2012-07-31 18:09:00 -04:00
Wilson Snyder
3e623b8959 Fix GCC 4.6.3 warning 2012-05-15 19:28:07 -04:00
Wilson Snyder
897d5c58b3 Devel version 2012-04-16 20:20:58 -04:00
Wilson Snyder
0029d068c7 Version bump 2012-04-15 16:21:31 -04:00
Wilson Snyder
fe456cb83d Devel version 2012-03-07 23:02:24 -05:00
Wilson Snyder
a8432ed4a4 Version bump 2012-03-07 22:50:13 -05:00
Wilson Snyder
717f45d117 Devel version 2012-01-25 19:23:58 -05:00
Wilson Snyder
a1d1d6d3d4 Version bump 2012-01-20 07:02:39 -05:00
Wilson Snyder
c2c7c7bd9a Copyright year update 2012-01-15 10:26:28 -05:00
Wilson Snyder
ad4edf6c68 Postrelease 2011-11-27 10:39:30 -05:00
Wilson Snyder
4100f20a69 Version bump 2011-11-27 10:37:23 -05:00
Wilson Snyder
748c189c79 Devel version 2011-10-25 19:11:45 -04:00
Wilson Snyder
b89be6c4b9 Version bump 2011-10-25 18:59:40 -04:00
Wilson Snyder
734400fd37 Fix version number mistake 2011-10-25 18:11:06 -04:00
Wilson Snyder
e56af34fb0 Post release 2011-10-20 21:18:16 -04:00
Wilson Snyder
7737aa20e8 Version bump 2011-10-20 21:13:42 -04:00
Wilson Snyder
86e3c78776 configure: Test for compiler flags, and remove old config checks 2011-10-12 19:04:57 -04:00
Wilson Snyder
194825f78e Add configure options for cc warnings and extended tests. 2011-10-07 06:48:40 -04:00
Wilson Snyder
3f7cbce58c Move version to configure.ac 2011-10-05 09:50:14 -04:00
Wilson Snyder
f77aa2623c Fix autoconf suggestions 2011-10-04 10:07:46 -04:00
Wilson Snyder
20847a3ff5 Fix autoconf warnings, bug396. 2011-10-04 08:48:37 -04:00
Wilson Snyder
71c1f00ec2 Copyright year update 2011-01-01 18:21:19 -05:00
Wilson Snyder
874673f64f Don't override CXX, bug212 2010-01-22 07:33:03 -05:00
Wilson Snyder
729dfdfed7 Copyright year update 2010-01-05 21:15:06 -05:00
Wilson Snyder
7df730cedd Verilator is now licensed under LGPL v3 and/or Artistic v2.0. 2009-05-04 17:07:57 -04:00
Wilson Snyder
cbb3351d97 Fix GCC 4.3.2 compile warnings. 2009-04-23 09:16:25 -04:00
Wilson Snyder
3d06720628 Copyright year update 2009-01-02 11:47:39 -05:00
Wilson Snyder
23ee0342c6 Fix Makefile to find headers/libraries under prefix. 2008-06-24 14:50:34 -04:00
Wilson Snyder
3073db4e81 Add configure check that C++ is working 2008-06-11 21:00:42 -04:00
Wilson Snyder
52912c6329 Convert repository to git from svn.
- Change .cvsignore to .gitignore
- Remove Id metacomments
- Cleanup whitespace at end of lines
2008-06-09 21:25:10 -04:00
Wilson Snyder
7edcc08886 Really enable DEFENV by default; didn't truely default it earlier
git-svn-id: file://localhost/svn/verilator/trunk/verilator@1045 77ca24e4-aefa-0310-84f0-b9a241c72d87
2008-04-28 21:14:17 +00:00
Wilson Snyder
ebe5711b40 The --enable-defenv configure option added in 3.660 is now the default.
git-svn-id: file://localhost/svn/verilator/trunk/verilator@1014 77ca24e4-aefa-0310-84f0-b9a241c72d87
2008-03-28 19:42:14 +00:00