diff options
| author | Jim Lawson | 2016-08-29 17:04:51 -0700 |
|---|---|---|
| committer | Jim Lawson | 2016-08-29 17:04:51 -0700 |
| commit | 1973e4d7333e2c57be4bcb7204210ecafdacab93 (patch) | |
| tree | 9752427bbfa2487dc6250cfb0d2aa8b952c3d24a /chiselFrontend/src/main/scala/chisel3/core/MonoConnect.scala | |
| parent | 62817134d222747f1eab34626fe7b1bb13b9f6df (diff) | |
Check module-specific compile options.
Import chisel3.NotStrict.CompileOptions in Chisel package.
Add CompileOptions tests.
Diffstat (limited to 'chiselFrontend/src/main/scala/chisel3/core/MonoConnect.scala')
| -rw-r--r-- | chiselFrontend/src/main/scala/chisel3/core/MonoConnect.scala | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/chiselFrontend/src/main/scala/chisel3/core/MonoConnect.scala b/chiselFrontend/src/main/scala/chisel3/core/MonoConnect.scala index 66729bac..41754827 100644 --- a/chiselFrontend/src/main/scala/chisel3/core/MonoConnect.scala +++ b/chiselFrontend/src/main/scala/chisel3/core/MonoConnect.scala @@ -79,7 +79,7 @@ object MonoConnect { source_b.elements.get(field) match { case Some(source_sub) => connect(sourceInfo, sink_sub, source_sub, context_mod) case None => { - if (compileOptions.connectFieldsMustMatch) { + if (compileOptions.connectFieldsMustMatch || context_mod.compileOptions.connectFieldsMustMatch) { throw MissingFieldException(field) } } @@ -134,13 +134,13 @@ object MonoConnect { case (Some(Output), Some(Output)) => issueConnect(sink, source) case (Some(Output), Some(Input)) => issueConnect(sink, source) case (_, None) => { - if (!compileOptions.dontAssumeDirectionality) { + if (!(compileOptions.dontAssumeDirectionality || context_mod.compileOptions.dontAssumeDirectionality)) { issueConnect(sink, source) } else { throw UnreadableSourceException } } - case (Some(Input), Some(Output)) if (!compileOptions.dontTryConnectionsSwapped) => issueConnect(source, sink) + case (Some(Input), Some(Output)) if (!(compileOptions.dontTryConnectionsSwapped || context_mod.compileOptions.dontTryConnectionsSwapped)) => issueConnect(source, sink) case (Some(Input), _) => throw UnwritableSinkException } } @@ -172,7 +172,7 @@ object MonoConnect { case (Some(Input), Some(Output)) => issueConnect(sink, source) case (Some(Output), _) => throw UnwritableSinkException case (_, None) => { - if (!compileOptions.dontAssumeDirectionality) { + if (!(compileOptions.dontAssumeDirectionality || context_mod.compileOptions.dontAssumeDirectionality)) { issueConnect(sink, source) } else { throw UnreadableSourceException |
