cocotb 1.9.2__cp36-cp36m-win_amd64.whl → 2.0.0b1__cp36-cp36m-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of cocotb might be problematic. Click here for more details.

Files changed (151) hide show
  1. cocotb/{ANSI.py → _ANSI.py} +5 -25
  2. cocotb/__init__.py +76 -332
  3. cocotb/_base_triggers.py +513 -0
  4. cocotb/_bridge.py +187 -0
  5. cocotb/_decorators.py +515 -0
  6. cocotb/_deprecation.py +3 -3
  7. cocotb/_exceptions.py +7 -0
  8. cocotb/_extended_awaitables.py +419 -0
  9. cocotb/_gpi_triggers.py +382 -0
  10. cocotb/_init.py +295 -0
  11. cocotb/_outcomes.py +54 -0
  12. cocotb/_profiling.py +46 -0
  13. cocotb/_py_compat.py +100 -29
  14. cocotb/_scheduler.py +454 -0
  15. cocotb/_test.py +245 -0
  16. cocotb/_test_factory.py +309 -0
  17. cocotb/_test_functions.py +42 -0
  18. cocotb/_typing.py +7 -0
  19. cocotb/_utils.py +296 -0
  20. cocotb/_version.py +3 -7
  21. cocotb/_xunit_reporter.py +66 -0
  22. cocotb/clock.py +271 -108
  23. cocotb/handle.py +1342 -795
  24. cocotb/libs/cocotb.dll +0 -0
  25. cocotb/libs/cocotb.exp +0 -0
  26. cocotb/libs/cocotb.lib +0 -0
  27. cocotb/libs/cocotbfli_modelsim.dll +0 -0
  28. cocotb/libs/cocotbfli_modelsim.exp +0 -0
  29. cocotb/libs/cocotbfli_modelsim.lib +0 -0
  30. cocotb/libs/cocotbutils.dll +0 -0
  31. cocotb/libs/cocotbutils.exp +0 -0
  32. cocotb/libs/cocotbutils.lib +0 -0
  33. cocotb/libs/cocotbvhpi_aldec.dll +0 -0
  34. cocotb/libs/cocotbvhpi_aldec.exp +0 -0
  35. cocotb/libs/cocotbvhpi_aldec.lib +0 -0
  36. cocotb/libs/cocotbvhpi_modelsim.dll +0 -0
  37. cocotb/libs/cocotbvhpi_modelsim.exp +0 -0
  38. cocotb/libs/cocotbvhpi_modelsim.lib +0 -0
  39. cocotb/libs/cocotbvpi_aldec.dll +0 -0
  40. cocotb/libs/cocotbvpi_aldec.exp +0 -0
  41. cocotb/libs/cocotbvpi_aldec.lib +0 -0
  42. cocotb/libs/cocotbvpi_ghdl.dll +0 -0
  43. cocotb/libs/cocotbvpi_ghdl.exp +0 -0
  44. cocotb/libs/cocotbvpi_ghdl.lib +0 -0
  45. cocotb/libs/cocotbvpi_icarus.exp +0 -0
  46. cocotb/libs/cocotbvpi_icarus.lib +0 -0
  47. cocotb/libs/cocotbvpi_icarus.vpl +0 -0
  48. cocotb/libs/cocotbvpi_modelsim.dll +0 -0
  49. cocotb/libs/cocotbvpi_modelsim.exp +0 -0
  50. cocotb/libs/cocotbvpi_modelsim.lib +0 -0
  51. cocotb/libs/embed.dll +0 -0
  52. cocotb/libs/embed.exp +0 -0
  53. cocotb/libs/embed.lib +0 -0
  54. cocotb/libs/gpi.dll +0 -0
  55. cocotb/libs/gpi.exp +0 -0
  56. cocotb/libs/gpi.lib +0 -0
  57. cocotb/libs/gpilog.dll +0 -0
  58. cocotb/libs/gpilog.exp +0 -0
  59. cocotb/libs/gpilog.lib +0 -0
  60. cocotb/libs/pygpilog.dll +0 -0
  61. cocotb/libs/pygpilog.exp +0 -0
  62. cocotb/libs/pygpilog.lib +0 -0
  63. cocotb/{log.py → logging.py} +105 -110
  64. cocotb/queue.py +103 -57
  65. cocotb/regression.py +667 -712
  66. cocotb/result.py +17 -188
  67. cocotb/share/def/aldec.exp +0 -0
  68. cocotb/share/def/aldec.lib +0 -0
  69. cocotb/share/def/ghdl.exp +0 -0
  70. cocotb/share/def/ghdl.lib +0 -0
  71. cocotb/share/def/icarus.exp +0 -0
  72. cocotb/share/def/icarus.lib +0 -0
  73. cocotb/share/def/modelsim.def +1 -0
  74. cocotb/share/def/modelsim.exp +0 -0
  75. cocotb/share/def/modelsim.lib +0 -0
  76. cocotb/share/include/cocotb_utils.h +6 -29
  77. cocotb/share/include/embed.h +5 -28
  78. cocotb/share/include/gpi.h +137 -92
  79. cocotb/share/include/gpi_logging.h +221 -142
  80. cocotb/share/include/py_gpi_logging.h +7 -4
  81. cocotb/share/include/vpi_user_ext.h +4 -26
  82. cocotb/share/lib/verilator/verilator.cpp +59 -54
  83. cocotb/simulator.cp36-win_amd64.exp +0 -0
  84. cocotb/simulator.cp36-win_amd64.lib +0 -0
  85. cocotb/simulator.cp36-win_amd64.pyd +0 -0
  86. cocotb/task.py +434 -212
  87. cocotb/triggers.py +55 -1092
  88. cocotb/types/__init__.py +25 -47
  89. cocotb/types/_abstract_array.py +151 -0
  90. cocotb/types/_array.py +264 -0
  91. cocotb/types/_logic.py +296 -0
  92. cocotb/types/_logic_array.py +834 -0
  93. cocotb/types/{range.py → _range.py} +36 -44
  94. cocotb/types/_resolve.py +76 -0
  95. cocotb/utils.py +119 -587
  96. cocotb-2.0.0b1.dist-info/METADATA +48 -0
  97. cocotb-2.0.0b1.dist-info/RECORD +139 -0
  98. cocotb-2.0.0b1.dist-info/entry_points.txt +3 -0
  99. {cocotb-1.9.2.dist-info → cocotb-2.0.0b1.dist-info}/top_level.txt +1 -0
  100. cocotb_tools/_coverage.py +33 -0
  101. cocotb_tools/_vendor/__init__.py +3 -0
  102. cocotb_tools/check_results.py +65 -0
  103. cocotb_tools/combine_results.py +152 -0
  104. cocotb_tools/config.py +241 -0
  105. {cocotb → cocotb_tools}/ipython_support.py +29 -22
  106. cocotb_tools/makefiles/Makefile.deprecations +27 -0
  107. {cocotb/share → cocotb_tools}/makefiles/Makefile.inc +82 -54
  108. {cocotb/share → cocotb_tools}/makefiles/Makefile.sim +8 -33
  109. {cocotb/share → cocotb_tools}/makefiles/simulators/Makefile.activehdl +9 -16
  110. cocotb_tools/makefiles/simulators/Makefile.cvc +61 -0
  111. cocotb_tools/makefiles/simulators/Makefile.dsim +39 -0
  112. {cocotb/share → cocotb_tools}/makefiles/simulators/Makefile.ghdl +13 -42
  113. cocotb_tools/makefiles/simulators/Makefile.icarus +80 -0
  114. cocotb_tools/makefiles/simulators/Makefile.ius +93 -0
  115. cocotb_tools/makefiles/simulators/Makefile.modelsim +9 -0
  116. cocotb_tools/makefiles/simulators/Makefile.nvc +60 -0
  117. cocotb_tools/makefiles/simulators/Makefile.questa +29 -0
  118. cocotb/share/makefiles/simulators/Makefile.questa → cocotb_tools/makefiles/simulators/Makefile.questa-compat +26 -54
  119. cocotb_tools/makefiles/simulators/Makefile.questa-qisqrun +149 -0
  120. {cocotb/share → cocotb_tools}/makefiles/simulators/Makefile.riviera +17 -56
  121. cocotb_tools/makefiles/simulators/Makefile.vcs +65 -0
  122. {cocotb/share → cocotb_tools}/makefiles/simulators/Makefile.verilator +15 -22
  123. {cocotb/share → cocotb_tools}/makefiles/simulators/Makefile.xcelium +20 -52
  124. {cocotb → cocotb_tools}/runner.py +794 -361
  125. cocotb/_sim_versions.py → cocotb_tools/sim_versions.py +16 -21
  126. pygpi/entry.py +34 -17
  127. cocotb/binary.py +0 -858
  128. cocotb/config.py +0 -289
  129. cocotb/decorators.py +0 -332
  130. cocotb/memdebug.py +0 -35
  131. cocotb/outcomes.py +0 -56
  132. cocotb/scheduler.py +0 -1099
  133. cocotb/share/makefiles/Makefile.deprecations +0 -12
  134. cocotb/share/makefiles/simulators/Makefile.cvc +0 -94
  135. cocotb/share/makefiles/simulators/Makefile.icarus +0 -111
  136. cocotb/share/makefiles/simulators/Makefile.ius +0 -125
  137. cocotb/share/makefiles/simulators/Makefile.modelsim +0 -32
  138. cocotb/share/makefiles/simulators/Makefile.nvc +0 -64
  139. cocotb/share/makefiles/simulators/Makefile.vcs +0 -98
  140. cocotb/types/array.py +0 -309
  141. cocotb/types/logic.py +0 -292
  142. cocotb/types/logic_array.py +0 -298
  143. cocotb/wavedrom.py +0 -199
  144. cocotb/xunit_reporter.py +0 -80
  145. cocotb-1.9.2.dist-info/METADATA +0 -170
  146. cocotb-1.9.2.dist-info/RECORD +0 -121
  147. cocotb-1.9.2.dist-info/entry_points.txt +0 -3
  148. {cocotb-1.9.2.dist-info → cocotb-2.0.0b1.dist-info}/LICENSE +0 -0
  149. {cocotb-1.9.2.dist-info → cocotb-2.0.0b1.dist-info}/WHEEL +0 -0
  150. {cocotb/_vendor → cocotb_tools}/__init__.py +0 -0
  151. {cocotb → cocotb_tools}/_vendor/distutils_version.py +0 -0
cocotb/result.py CHANGED
@@ -1,209 +1,38 @@
1
- # Copyright (c) 2013 Potential Ventures Ltd
2
- # Copyright (c) 2013 SolarFlare Communications Inc
3
- # All rights reserved.
4
- #
5
- # Redistribution and use in source and binary forms, with or without
6
- # modification, are permitted provided that the following conditions are met:
7
- # * Redistributions of source code must retain the above copyright
8
- # notice, this list of conditions and the following disclaimer.
9
- # * Redistributions in binary form must reproduce the above copyright
10
- # notice, this list of conditions and the following disclaimer in the
11
- # documentation and/or other materials provided with the distribution.
12
- # * Neither the name of Potential Ventures Ltd,
13
- # SolarFlare Communications Inc nor the
14
- # names of its contributors may be used to endorse or promote products
15
- # derived from this software without specific prior written permission.
16
- #
17
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
18
- # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
19
- # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
20
- # DISCLAIMED. IN NO EVENT SHALL POTENTIAL VENTURES LTD BE LIABLE FOR ANY
21
- # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
22
- # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
23
- # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
24
- # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
- # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
26
- # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
-
28
- import sys
29
-
30
- # TODO: Could use cStringIO?
31
- import traceback
1
+ # Copyright cocotb contributors
2
+ # Licensed under the Revised BSD License, see LICENSE for details.
3
+ # SPDX-License-Identifier: BSD-3-Clause
32
4
  import warnings
33
- from io import StringIO
34
-
35
- """Exceptions and functions for simulation result handling."""
36
-
37
-
38
- def raise_error(obj, msg):
39
- """Create a :exc:`TestError` exception and raise it after printing a traceback.
40
-
41
- .. deprecated:: 1.3
42
- Raise a standard Python exception instead of calling this function.
43
- A stacktrace will be printed by cocotb automatically if the exception is unhandled.
44
-
45
- Args:
46
- obj: Object with a log method.
47
- msg (str): The log message.
48
- """
49
- warnings.warn(
50
- "``raise_error`` is deprecated - raise a standard Exception instead",
51
- DeprecationWarning,
52
- stacklevel=2,
53
- )
54
- _raise_error(obj, msg)
55
-
56
-
57
- def _raise_error(obj, msg):
58
- exc_info = sys.exc_info()
59
- buff = StringIO()
60
- traceback.print_exception(*exc_info, file=buff)
61
- obj.log.error(f"{msg}\n{buff.getvalue()}")
62
- exception = TestError(msg)
63
- exception.stderr.write(buff.getvalue())
64
- raise exception
65
-
66
-
67
- def create_error(obj, msg):
68
- """Like :func:`raise_error`, but return the exception rather than raise it,
69
- simply to avoid too many levels of nested `try/except` blocks.
70
5
 
71
- .. deprecated:: 1.3
72
- Raise a standard Python exception instead of calling this function.
73
6
 
74
- Args:
75
- obj: Object with a log method.
76
- msg (str): The log message.
77
- """
78
- warnings.warn(
79
- "``create_error`` is deprecated - raise a standard Exception instead",
80
- DeprecationWarning,
81
- stacklevel=2,
82
- )
83
- try:
84
- # use the private version to avoid multiple warnings
85
- _raise_error(obj, msg)
86
- except TestError as error:
87
- return error
88
- return TestError("Creating error traceback failed")
89
-
90
-
91
- class ReturnValue(Exception):
92
- """
93
- Helper exception needed for Python versions prior to 3.3.
94
-
95
- .. deprecated:: 1.4
96
- Use a :keyword:`return` statement instead; this works in all supported versions of Python.
97
- """
98
-
99
- def __init__(self, retval):
7
+ def __getattr__(name: str) -> object:
8
+ if name == "TestSuccess":
100
9
  warnings.warn(
101
- "``ReturnValue`` is deprecated, use a normal return statement instead.",
10
+ "`raise TestSuccess` is deprecated. Use `cocotb.pass_test()` instead.",
102
11
  DeprecationWarning,
103
12
  stacklevel=2,
104
13
  )
105
- self.retval = retval
106
-
14
+ from cocotb._test_functions import TestSuccess # noqa: PLC0415
107
15
 
108
- class TestComplete(Exception):
109
- """
110
- Exception showing that the test was completed. Sub-exceptions detail the exit status.
16
+ return TestSuccess
111
17
 
112
- .. deprecated:: 1.6.0
113
- The ``stdout`` and ``stderr`` attributes.
114
- """
115
-
116
- def __init__(self, *args, **kwargs):
117
- super().__init__(*args, **kwargs)
118
- self.__stdout = StringIO()
119
- self.__stderr = StringIO()
120
-
121
- @staticmethod
122
- def __deprecated(which: str) -> None:
18
+ elif name == "SimFailure":
123
19
  warnings.warn(
124
- f"Attribute {which} is deprecated and will be removed in the next major release",
125
- DeprecationWarning,
126
- stacklevel=3,
127
- )
128
-
129
- @property
130
- def stdout(self) -> StringIO:
131
- self.__deprecated("stdout")
132
- return self.__stdout
133
-
134
- @stdout.setter
135
- def stdout(self, new_value: StringIO) -> None:
136
- self.__deprecated("stdout")
137
- self.__stdout = new_value
138
-
139
- @property
140
- def stderr(self) -> StringIO:
141
- self.__deprecated("stderr")
142
- return self.__stderr
143
-
144
- @stderr.setter
145
- def stderr(self, new_value: StringIO) -> None:
146
- self.__deprecated("stderr")
147
- self.__stderr = new_value
148
-
149
-
150
- class ExternalException(Exception):
151
- """Exception thrown by :class:`cocotb.external` functions."""
152
-
153
- def __init__(self, exception):
154
- self.exception = exception
155
-
156
-
157
- class TestError(TestComplete):
158
- """
159
- Exception showing that the test was completed with severity Error.
160
-
161
- .. deprecated:: 1.5
162
- Raise a standard Python exception instead.
163
- A stacktrace will be printed by cocotb automatically if the exception is unhandled.
164
- """
165
-
166
- def __init__(self, *args, **kwargs):
167
- warnings.warn(
168
- "TestError is deprecated - raise a standard Exception instead",
20
+ "SimFailure was moved to `cocotb.regression`.",
169
21
  DeprecationWarning,
170
22
  stacklevel=2,
171
23
  )
172
- super().__init__(*args, **kwargs)
173
-
174
-
175
- class TestFailure(TestComplete, AssertionError):
176
- """
177
- Exception showing that the test was completed with severity Failure.
24
+ from cocotb.regression import SimFailure # noqa: PLC0415
178
25
 
179
- .. deprecated:: 1.6.0
180
- Use a standard ``assert`` statement instead of raising this exception.
181
- Use ``expect_fail`` rather than ``expect_error`` with this exception in the
182
- :class:`cocotb.test` decorator.
183
- """
26
+ return SimFailure
184
27
 
185
- def __init__(self, *args, **kwargs):
28
+ elif name == "SimTimeoutError":
186
29
  warnings.warn(
187
- "TestFailure is deprecated, use an ``assert`` statement instead",
30
+ "SimTimeoutError was moved from `cocotb.result` to `cocotb.triggers`.",
188
31
  DeprecationWarning,
189
32
  stacklevel=2,
190
33
  )
191
- super().__init__(*args, **kwargs)
192
-
193
-
194
- class TestSuccess(TestComplete):
195
- """Exception showing that the test was completed successfully."""
196
-
197
- pass
198
-
199
-
200
- class SimFailure(TestComplete):
201
- """Exception showing that the simulator exited unsuccessfully."""
202
-
203
- pass
204
-
34
+ from cocotb.triggers import SimTimeoutError # noqa: PLC0415
205
35
 
206
- class SimTimeoutError(TimeoutError):
207
- """Exception for when a timeout, in terms of simulation time, occurs."""
36
+ return SimTimeoutError
208
37
 
209
- pass
38
+ raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
Binary file
Binary file
cocotb/share/def/ghdl.exp CHANGED
Binary file
cocotb/share/def/ghdl.lib CHANGED
Binary file
Binary file
Binary file
@@ -100,6 +100,7 @@ mti_ScheduleWakeup64
100
100
  mti_Sensitize
101
101
  mti_SetSignalValue
102
102
  mti_SetVarValue
103
+ mti_TickDir
103
104
  mti_TickLeft
104
105
  mti_TickLength
105
106
  mti_TickRight
Binary file
Binary file
@@ -1,31 +1,8 @@
1
- /******************************************************************************
2
- * Copyright (c) 2013 Potential Ventures Ltd
3
- * Copyright (c) 2013 SolarFlare Communications Inc
4
- * All rights reserved.
5
- *
6
- * Redistribution and use in source and binary forms, with or without
7
- * modification, are permitted provided that the following conditions are met:
8
- * * Redistributions of source code must retain the above copyright
9
- * notice, this list of conditions and the following disclaimer.
10
- * * Redistributions in binary form must reproduce the above copyright
11
- * notice, this list of conditions and the following disclaimer in the
12
- * documentation and/or other materials provided with the distribution.
13
- * * Neither the name of Potential Ventures Ltd,
14
- * SolarFlare Communications Inc nor the
15
- * names of its contributors may be used to endorse or promote products
16
- * derived from this software without specific prior written permission.
17
- *
18
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21
- * ARE DISCLAIMED. IN NO EVENT SHALL POTENTIAL VENTURES LTD BE LIABLE FOR ANY
22
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
- ******************************************************************************/
1
+ // Copyright cocotb contributors
2
+ // Copyright (c) 2013 Potential Ventures Ltd
3
+ // Copyright (c) 2013 SolarFlare Communications Inc
4
+ // Licensed under the Revised BSD License, see LICENSE for details.
5
+ // SPDX-License-Identifier: BSD-3-Clause
29
6
 
30
7
  #ifndef COCOTB_UTILS_H_
31
8
  #define COCOTB_UTILS_H_
@@ -73,7 +50,7 @@ extern "C" COCOTBUTILS_EXPORT int is_python_context;
73
50
  template <typename F>
74
51
  class Deferable {
75
52
  public:
76
- constexpr Deferable(F f) : f_(f){};
53
+ constexpr Deferable(F f) : f_(f) {};
77
54
  ~Deferable() { f_(); }
78
55
 
79
56
  private:
@@ -1,31 +1,8 @@
1
- /******************************************************************************
2
- * Copyright (c) 2013 Potential Ventures Ltd
3
- * Copyright (c) 2013 SolarFlare Communications Inc
4
- * All rights reserved.
5
- *
6
- * Redistribution and use in source and binary forms, with or without
7
- * modification, are permitted provided that the following conditions are met:
8
- * * Redistributions of source code must retain the above copyright
9
- * notice, this list of conditions and the following disclaimer.
10
- * * Redistributions in binary form must reproduce the above copyright
11
- * notice, this list of conditions and the following disclaimer in the
12
- * documentation and/or other materials provided with the distribution.
13
- * * Neither the name of Potential Ventures Ltd,
14
- * SolarFlare Communications Inc nor the
15
- * names of its contributors may be used to endorse or promote products
16
- * derived from this software without specific prior written permission.
17
- *
18
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21
- * ARE DISCLAIMED. IN NO EVENT SHALL POTENTIAL VENTURES LTD BE LIABLE FOR ANY
22
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
- ******************************************************************************/
1
+ // Copyright cocotb contributors
2
+ // Copyright (c) 2013 Potential Ventures Ltd
3
+ // Copyright (c) 2013 SolarFlare Communications Inc
4
+ // Licensed under the Revised BSD License, see LICENSE for details.
5
+ // SPDX-License-Identifier: BSD-3-Clause
29
6
 
30
7
  #ifndef COCOTB_EMBED_H_
31
8
  #define COCOTB_EMBED_H_