From ab160482a972787d6637299a4598d479ec54ed75 Mon Sep 17 00:00:00 2001 From: Peter Donovan Date: Fri, 2 Sep 2022 12:24:05 -0700 Subject: [PATCH 01/34] Fix lock-time single-threaded build on Linux. --- org.lflang/src/lib/c/reactor-c | 2 +- org.lflang/src/org/lflang/generator/c/CCoreFilesUtils.java | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 454d08505e..b683e6134e 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 454d08505e80fdff5056f88d2d8242f4731f9540 +Subproject commit b683e6134ea133e232cd840b7f6675ec7f989cb4 diff --git a/org.lflang/src/org/lflang/generator/c/CCoreFilesUtils.java b/org.lflang/src/org/lflang/generator/c/CCoreFilesUtils.java index 7089d4305c..3affa55385 100644 --- a/org.lflang/src/org/lflang/generator/c/CCoreFilesUtils.java +++ b/org.lflang/src/org/lflang/generator/c/CCoreFilesUtils.java @@ -93,6 +93,7 @@ private static List getPlatformFiles() { "platform/lf_POSIX_threads_support.c", "platform/lf_C11_threads_support.c", "platform/lf_C11_threads_support.h", + "platform/lf_os_single_threaded_support.c", "platform/lf_POSIX_threads_support.h", "platform/lf_POSIX_threads_support.c", "platform/lf_unix_clock_support.c", From 0bab986797fa04219333a222126fd21ca0642bf5 Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Fri, 2 Sep 2022 17:25:36 -0700 Subject: [PATCH 02/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index b683e6134e..cab3647dcb 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit b683e6134ea133e232cd840b7f6675ec7f989cb4 +Subproject commit cab3647dcb34a28dcd16389e41e51c09efa05586 From a99989f501b6f2b50b8d6422741971e39d4aeb40 Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Fri, 2 Sep 2022 17:55:52 -0700 Subject: [PATCH 03/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index cab3647dcb..3faaad8999 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit cab3647dcb34a28dcd16389e41e51c09efa05586 +Subproject commit 3faaad899989e49b184d031c04a4a35ffefd55e8 From cbe7e5aadba6241100f4eed07d9751992411259b Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Fri, 2 Sep 2022 18:01:48 -0700 Subject: [PATCH 04/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 3faaad8999..23673f0ffb 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 3faaad899989e49b184d031c04a4a35ffefd55e8 +Subproject commit 23673f0ffbf4445c2356ec30daccd1910a236fec From 0fba7dadc9ddc07973fcc1d5a6339925a4a1b909 Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Fri, 2 Sep 2022 22:31:56 -0700 Subject: [PATCH 05/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 23673f0ffb..2994d082df 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 23673f0ffbf4445c2356ec30daccd1910a236fec +Subproject commit 2994d082df61325b1863d770da1f5938c74d0b82 From 34be2c2314371dabd0a592310e1a12daba4899b9 Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Fri, 2 Sep 2022 22:46:52 -0700 Subject: [PATCH 06/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 2994d082df..ad619dd5a7 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 2994d082df61325b1863d770da1f5938c74d0b82 +Subproject commit ad619dd5a7ffd6e402479c1c01e456ed940fa664 From 1e5b58d600bfca2e64715dda8ba4e0e64af13120 Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Fri, 2 Sep 2022 23:02:15 -0700 Subject: [PATCH 07/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index ad619dd5a7..44663dad9b 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit ad619dd5a7ffd6e402479c1c01e456ed940fa664 +Subproject commit 44663dad9b449d3ad42cfd5c0d9124f8d7af864e From 8c7fa17767914fbb279cfe26f88703c6c3d49ac5 Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Fri, 2 Sep 2022 23:35:39 -0700 Subject: [PATCH 08/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 44663dad9b..bd20b2d103 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 44663dad9b449d3ad42cfd5c0d9124f8d7af864e +Subproject commit bd20b2d103c529956fcf8faa7fb959fc81dabe7c From c662e321d25651de15cbcd1df008acbc12d16eed Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Sat, 3 Sep 2022 00:22:11 -0700 Subject: [PATCH 09/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index bd20b2d103..d23bd4082f 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit bd20b2d103c529956fcf8faa7fb959fc81dabe7c +Subproject commit d23bd4082f01905b9b0bca6041c555885f49e9c5 From 73f921d8436689823f3d325268da7b9b4e48cb21 Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Sat, 3 Sep 2022 00:40:45 -0700 Subject: [PATCH 10/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index d23bd4082f..b2ddd98b1a 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit d23bd4082f01905b9b0bca6041c555885f49e9c5 +Subproject commit b2ddd98b1a74f97df583803b100207ac722622d1 From c1897b2d441bca21325b067e659e8bc7a368def4 Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Sat, 3 Sep 2022 00:50:42 -0700 Subject: [PATCH 11/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index b2ddd98b1a..922fe32901 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit b2ddd98b1a74f97df583803b100207ac722622d1 +Subproject commit 922fe329014b9a4f19cc74f2309ce4d33aae1fb8 From 5a410212f25297a4ad186eaabb00c15893d18c4f Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Sat, 3 Sep 2022 01:05:55 -0700 Subject: [PATCH 12/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 922fe32901..ac0a9367f9 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 922fe329014b9a4f19cc74f2309ce4d33aae1fb8 +Subproject commit ac0a9367f9bb57e49d1d66c6904f6c796ada1faa From 6cb5808e38e3a269f51ec3b1343e142a4dbf8326 Mon Sep 17 00:00:00 2001 From: Peter Donovan Date: Sat, 3 Sep 2022 19:53:40 -0700 Subject: [PATCH 13/34] Update submodule; fix typo. --- org.lflang/src/lib/c/reactor-c | 2 +- org.lflang/src/org/lflang/generator/c/CGenerator.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index ac0a9367f9..d5074cd14c 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit ac0a9367f9bb57e49d1d66c6904f6c796ada1faa +Subproject commit d5074cd14c2dbdc59f550bcb1dfb2385c23a7273 diff --git a/org.lflang/src/org/lflang/generator/c/CGenerator.java b/org.lflang/src/org/lflang/generator/c/CGenerator.java index 22f39bf0e4..87f0c82e5e 100644 --- a/org.lflang/src/org/lflang/generator/c/CGenerator.java +++ b/org.lflang/src/org/lflang/generator/c/CGenerator.java @@ -1846,7 +1846,7 @@ public void processProtoFile(String filename, CancelIndicator cancelIndicator) { List.of("--c_out="+this.fileConfig.getSrcGenPath(), filename), fileConfig.srcPath); if (protoc == null) { - errorReporter.reportError("Processing .proto files requires proto-c >= 1.3.3."); + errorReporter.reportError("Processing .proto files requires protoc-c >= 1.3.3."); return; } var returnCode = protoc.run(cancelIndicator); From 1f291a16759a04bfacc92628e059f8fbc00d15df Mon Sep 17 00:00:00 2001 From: Peter Donovan Date: Sat, 3 Sep 2022 19:59:54 -0700 Subject: [PATCH 14/34] Update submodule. --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index d5074cd14c..2ce7bd0b1d 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit d5074cd14c2dbdc59f550bcb1dfb2385c23a7273 +Subproject commit 2ce7bd0b1dcad50248cebb68b04368e02b91199a From 6aba5dba8a07f996d4a2ce67907c2f40466dd3df Mon Sep 17 00:00:00 2001 From: Peter Donovan Date: Sat, 3 Sep 2022 20:14:49 -0700 Subject: [PATCH 15/34] Update submodule. --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 2ce7bd0b1d..c8d6a17849 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 2ce7bd0b1dcad50248cebb68b04368e02b91199a +Subproject commit c8d6a178496693591e27aa75fec1753b428e5d9d From 74a80cf12fdad9422c95334cf301ef3acdccba19 Mon Sep 17 00:00:00 2001 From: Peter Donovan Date: Sat, 3 Sep 2022 21:45:19 -0700 Subject: [PATCH 16/34] Update submodule. --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index c8d6a17849..7a6559c473 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit c8d6a178496693591e27aa75fec1753b428e5d9d +Subproject commit 7a6559c473227dd6f123e563bdc75d47e9b69e26 From 308035a49dd6422b3a966e3c90b39942a91a239d Mon Sep 17 00:00:00 2001 From: Peter Donovan Date: Sun, 4 Sep 2022 00:18:10 -0700 Subject: [PATCH 17/34] Update submodule. --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 7a6559c473..9729715d05 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 7a6559c473227dd6f123e563bdc75d47e9b69e26 +Subproject commit 9729715d05fd7fbb4e1a855739a86f0d69f16fb8 From af471d99779582ef65a4754e87441040c80417d8 Mon Sep 17 00:00:00 2001 From: Peter Donovan Date: Sun, 4 Sep 2022 09:58:44 -0700 Subject: [PATCH 18/34] Address LSP test failures. --- test/C/src/ManualDelayedReaction.lf | 2 +- test/Python/src/ManualDelayedReaction.lf | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test/C/src/ManualDelayedReaction.lf b/test/C/src/ManualDelayedReaction.lf index 0ed0ab555f..1402e00c62 100644 --- a/test/C/src/ManualDelayedReaction.lf +++ b/test/C/src/ManualDelayedReaction.lf @@ -25,7 +25,7 @@ reactor Source { output out: int timer t - // reaction(t) -> out after 100 msec {= + // reaction(t) -> out after 100 msec reaction(t) -> out {= lf_set(out, 1); =} } diff --git a/test/Python/src/ManualDelayedReaction.lf b/test/Python/src/ManualDelayedReaction.lf index 773c106b5f..0d142405cd 100644 --- a/test/Python/src/ManualDelayedReaction.lf +++ b/test/Python/src/ManualDelayedReaction.lf @@ -25,7 +25,7 @@ reactor Source { output out timer t - reaction(t) -> out {= out.set(1) =} # reaction(t) -> out after 100 msec {= + reaction(t) -> out {= out.set(1) =} # reaction(t) -> out after 100 msec } reactor Sink { From e67c93b5661cb18e4c541549eeeccf16ccc2cd26 Mon Sep 17 00:00:00 2001 From: Peter Donovan Date: Sun, 4 Sep 2022 10:01:27 -0700 Subject: [PATCH 19/34] Update submodule. --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 9729715d05..1760bce6fc 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 9729715d05fd7fbb4e1a855739a86f0d69f16fb8 +Subproject commit 1760bce6fce7fcaaeab7ab5e66dfef252dcd61fc From b38cd7accd6172ec5d5e179567e41cf95d54f9ef Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Wed, 7 Sep 2022 18:17:08 -0700 Subject: [PATCH 20/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 1760bce6fc..a7d20295f7 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 1760bce6fce7fcaaeab7ab5e66dfef252dcd61fc +Subproject commit a7d20295f7b74a5e4f67beb80494419c38332a30 From 0e5636c06984fe63de29611c0b619451c2fc1e08 Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Wed, 7 Sep 2022 18:31:49 -0700 Subject: [PATCH 21/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index a7d20295f7..12cc014a6a 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit a7d20295f7b74a5e4f67beb80494419c38332a30 +Subproject commit 12cc014a6a935da9a06179b3598e28c5467efa50 From 739cb0bd333613b1f227cd56de8c081eec359d88 Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Thu, 8 Sep 2022 23:49:41 -0700 Subject: [PATCH 22/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 12cc014a6a..7ee710689c 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 12cc014a6a935da9a06179b3598e28c5467efa50 +Subproject commit 7ee710689c9f01094f5302d2aead7b67b91a5d81 From 8c81769e5618937d4d7676678d49a482c98f1e01 Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Fri, 9 Sep 2022 00:00:06 -0700 Subject: [PATCH 23/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 7ee710689c..f65a562a1e 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 7ee710689c9f01094f5302d2aead7b67b91a5d81 +Subproject commit f65a562a1e5f34f31eb8ccd2e462aff60d2d04a5 From 892750e9b6ab84e8086c923a28888a9f9707939d Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Fri, 9 Sep 2022 00:12:09 -0700 Subject: [PATCH 24/34] Update submodule --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index f65a562a1e..c0c8ab2321 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit f65a562a1e5f34f31eb8ccd2e462aff60d2d04a5 +Subproject commit c0c8ab2321129044ee20bb79aa7b63039b7182fa From 0fe3be6eb75a4ed673be0ea37c80c5a9ae2b3675 Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Fri, 9 Sep 2022 00:17:28 -0700 Subject: [PATCH 25/34] Adjust tests that used lf_nanosleep --- test/C/src/SimpleDeadline.lf | 2 +- test/C/src/concurrent/AsyncCallback.lf | 2 +- test/C/src/concurrent/AsyncCallbackDrop.lf | 2 +- test/C/src/concurrent/AsyncCallbackReplace.lf | 2 +- test/C/src/federated/DistributedPhysicalActionUpstream.lf | 2 +- test/C/src/federated/DistributedPhysicalActionUpstreamLong.lf | 2 +- test/C/src/federated/FeedbackDelay.lf | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/test/C/src/SimpleDeadline.lf b/test/C/src/SimpleDeadline.lf index b586e8189c..a59a6728e9 100644 --- a/test/C/src/SimpleDeadline.lf +++ b/test/C/src/SimpleDeadline.lf @@ -34,7 +34,7 @@ main reactor SimpleDeadline { reaction(start) -> d.x {= instant_t sleep_time_ns = 20000000; - lf_nanosleep(sleep_time_ns); + lf_sleep(sleep_time_ns); lf_set(d.x, 42); =} } diff --git a/test/C/src/concurrent/AsyncCallback.lf b/test/C/src/concurrent/AsyncCallback.lf index 8fdb0d943a..90c300a8b2 100644 --- a/test/C/src/concurrent/AsyncCallback.lf +++ b/test/C/src/concurrent/AsyncCallback.lf @@ -26,7 +26,7 @@ main reactor AsyncCallback { // Simulate time passing before a callback occurs. void* take_time(void* a) { instant_t sleep_time = 100000000; - lf_nanosleep(sleep_time); + lf_sleep(sleep_time); callback(a); return NULL; } diff --git a/test/C/src/concurrent/AsyncCallbackDrop.lf b/test/C/src/concurrent/AsyncCallbackDrop.lf index 774e4b704f..b3f857333a 100644 --- a/test/C/src/concurrent/AsyncCallbackDrop.lf +++ b/test/C/src/concurrent/AsyncCallbackDrop.lf @@ -20,7 +20,7 @@ main reactor { // Simulate time passing before a callback occurs. void* take_time(void* a) { instant_t sleep_time = 100000000; - lf_nanosleep(sleep_time); + lf_sleep(sleep_time); callback(a); return NULL; } diff --git a/test/C/src/concurrent/AsyncCallbackReplace.lf b/test/C/src/concurrent/AsyncCallbackReplace.lf index a3758a6953..92e4e5f2af 100644 --- a/test/C/src/concurrent/AsyncCallbackReplace.lf +++ b/test/C/src/concurrent/AsyncCallbackReplace.lf @@ -20,7 +20,7 @@ main reactor { // Simulate time passing before a callback occurs. void* take_time(void* a) { instant_t sleep_time = 100000000; - lf_nanosleep(sleep_time); + lf_sleep(sleep_time); callback(a); return NULL; } diff --git a/test/C/src/federated/DistributedPhysicalActionUpstream.lf b/test/C/src/federated/DistributedPhysicalActionUpstream.lf index 5991b712a0..724a2e9d56 100644 --- a/test/C/src/federated/DistributedPhysicalActionUpstream.lf +++ b/test/C/src/federated/DistributedPhysicalActionUpstream.lf @@ -21,7 +21,7 @@ preamble {= void* take_time(void* a) { while (_counter < 15) { instant_t sleep_time = MSEC(10); - lf_nanosleep(sleep_time); + lf_sleep(sleep_time); callback(a); } return NULL; diff --git a/test/C/src/federated/DistributedPhysicalActionUpstreamLong.lf b/test/C/src/federated/DistributedPhysicalActionUpstreamLong.lf index 018725ea86..4b1662e237 100644 --- a/test/C/src/federated/DistributedPhysicalActionUpstreamLong.lf +++ b/test/C/src/federated/DistributedPhysicalActionUpstreamLong.lf @@ -21,7 +21,7 @@ preamble {= void* take_time(void* a) { while (_counter < 20) { instant_t sleep_time = USEC(50); - lf_nanosleep(sleep_time); + lf_sleep(sleep_time); callback(a); } return NULL; diff --git a/test/C/src/federated/FeedbackDelay.lf b/test/C/src/federated/FeedbackDelay.lf index 50134af6e6..879072f4eb 100644 --- a/test/C/src/federated/FeedbackDelay.lf +++ b/test/C/src/federated/FeedbackDelay.lf @@ -49,7 +49,7 @@ reactor Planner { output response: double reaction(request) -> response {= - lf_nanosleep(MSEC(10)); + lf_sleep(MSEC(10)); SET(response, request->value); =} } From a83bebd5e8dfdc825e41415138c8cfb81e54c94b Mon Sep 17 00:00:00 2001 From: Marten Lohstroh Date: Sun, 11 Sep 2022 23:38:36 -0700 Subject: [PATCH 26/34] Update submodules --- org.lflang/src/lib/c/reactor-c | 2 +- org.lflang/src/lib/cpp/reactor-cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index c0c8ab2321..527959bad2 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit c0c8ab2321129044ee20bb79aa7b63039b7182fa +Subproject commit 527959bad2772be22df411fc53a33d2e25dd52d5 diff --git a/org.lflang/src/lib/cpp/reactor-cpp b/org.lflang/src/lib/cpp/reactor-cpp index e294554170..39d53bc613 160000 --- a/org.lflang/src/lib/cpp/reactor-cpp +++ b/org.lflang/src/lib/cpp/reactor-cpp @@ -1 +1 @@ -Subproject commit e294554170ad0cda497b23b29627ff8046cbd3ad +Subproject commit 39d53bc613872f0dd86ea198ed8365f5c86e3def From d5cd82f64b0ab943e8b20e6352cba9090d96552e Mon Sep 17 00:00:00 2001 From: Erling Rennemo Jellum Date: Thu, 1 Dec 2022 18:39:14 -0800 Subject: [PATCH 27/34] Add NRF52 as platform, remove Arduino 32bit stuff --- org.lflang/src/org/lflang/TargetProperty.java | 1 + org.lflang/src/org/lflang/generator/c/CGenerator.java | 3 +-- org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java | 4 ---- 3 files changed, 2 insertions(+), 6 deletions(-) diff --git a/org.lflang/src/org/lflang/TargetProperty.java b/org.lflang/src/org/lflang/TargetProperty.java index 71f6060c19..4596c751e9 100644 --- a/org.lflang/src/org/lflang/TargetProperty.java +++ b/org.lflang/src/org/lflang/TargetProperty.java @@ -1404,6 +1404,7 @@ public String toString() { public enum Platform { AUTO, ARDUINO("Arduino"), + NRF52("Nrf52"), LINUX("Linux"), MAC("Darwin"), WINDOWS("Windows"); diff --git a/org.lflang/src/org/lflang/generator/c/CGenerator.java b/org.lflang/src/org/lflang/generator/c/CGenerator.java index ec2b7986c3..d937b1d9b2 100644 --- a/org.lflang/src/org/lflang/generator/c/CGenerator.java +++ b/org.lflang/src/org/lflang/generator/c/CGenerator.java @@ -1093,8 +1093,7 @@ private void pickCompilePlatform() { // if platform target was set, use given platform instead if (targetConfig.platformOptions.platform != Platform.AUTO) { osName = targetConfig.platformOptions.platform.toString(); - } - if (Stream.of("mac", "darwin", "win", "nux", "arduino").noneMatch(osName::contains)) { + } else if (Stream.of("mac", "darwin", "win", "nux").noneMatch(osName::contains)) { errorReporter.reportError("Platform " + osName + " is not supported"); } } diff --git a/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java b/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java index 7bf079f515..2bba12976d 100644 --- a/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java +++ b/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java @@ -87,10 +87,6 @@ public static String generateDefineDirectives( code.pr("#define LOG_LEVEL " + logLevel); code.pr("#define TARGET_FILES_DIRECTORY " + addDoubleQuotes(srcGenPath.toString())); - if (targetConfig.platformOptions.platform == Platform.ARDUINO) { - code.pr("#define MICROSECOND_TIME"); - code.pr("#define BIT_32"); - } if (isFederated) { code.pr("#define NUMBER_OF_FEDERATES " + numFederates); code.pr(generateFederatedDefineDirective(coordinationType)); From 962ffe7a863e85a53fad5876b90f5fd6581273ca Mon Sep 17 00:00:00 2001 From: Erling Rennemo Jellum Date: Sat, 10 Dec 2022 18:43:54 -0800 Subject: [PATCH 28/34] Add THREADED and UNTHREADED to cmake generator --- org.lflang/src/org/lflang/generator/c/CCmakeGenerator.java | 4 ++-- .../src/org/lflang/generator/c/CPreambleGenerator.java | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/org.lflang/src/org/lflang/generator/c/CCmakeGenerator.java b/org.lflang/src/org/lflang/generator/c/CCmakeGenerator.java index ef3c5352eb..53320aa615 100644 --- a/org.lflang/src/org/lflang/generator/c/CCmakeGenerator.java +++ b/org.lflang/src/org/lflang/generator/c/CCmakeGenerator.java @@ -206,10 +206,10 @@ CodeBuilder generateCMakeCode( // Add additional flags so runtime can distinguish between multi-threaded and single-threaded mode if (targetConfig.threading) { cMakeCode.pr("# Set flag to indicate a multi-threaded runtime"); - cMakeCode.pr("target_compile_definitions( ${LF_MAIN_TARGET} PUBLIC LF_MULTI_THREADED)"); + cMakeCode.pr("target_compile_definitions( ${LF_MAIN_TARGET} PUBLIC LF_THREADED=1)"); } else { cMakeCode.pr("# Set flag to indicate a single-threaded runtime"); - cMakeCode.pr("target_compile_definitions( ${LF_MAIN_TARGET} PUBLIC LF_SINGLE_THREADED)"); + cMakeCode.pr("target_compile_definitions( ${LF_MAIN_TARGET} PUBLIC LF_UNTHREADED=1)"); } cMakeCode.newLine(); diff --git a/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java b/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java index 2bba12976d..2470b86d98 100644 --- a/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java +++ b/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java @@ -104,6 +104,11 @@ public static String generateDefineDirectives( targetConfig.clockSyncOptions )); } + if (targetConfig.threading) { + targetConfig.compileDefinitions.put("LF_THREADED", "1"); + } else { + targetConfig.compileDefinitions.put("LF_UNTHREADED", "1"); + } code.newLine(); return code.toString(); } From bff30f036fe9155bf1f3d04fec9b24763304106a Mon Sep 17 00:00:00 2001 From: Erling Rennemo Jellum Date: Wed, 21 Dec 2022 10:30:41 -0800 Subject: [PATCH 29/34] Update trace macro --- org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java | 2 +- util/tracing/trace_to_chrome.c | 2 +- util/tracing/trace_to_csv.c | 2 +- util/tracing/trace_to_influxdb.c | 2 +- util/tracing/trace_util.c | 2 +- util/tracing/trace_util.h | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java b/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java index 7bf079f515..cd0e0db6a8 100644 --- a/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java +++ b/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java @@ -100,7 +100,7 @@ public static String generateDefineDirectives( } } if (tracing != null) { - targetConfig.compileDefinitions.put("LINGUA_FRANCA_TRACE", tracing.traceFileName); + targetConfig.compileDefinitions.put("LF_TRACE", tracing.traceFileName); } if (clockSyncIsOn) { code.pr(generateClockSyncDefineDirective( diff --git a/util/tracing/trace_to_chrome.c b/util/tracing/trace_to_chrome.c index a394a194ee..d39f53171e 100644 --- a/util/tracing/trace_to_chrome.c +++ b/util/tracing/trace_to_chrome.c @@ -30,7 +30,7 @@ THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * for viewing in Chrome's event visualizer. To visualize the resulting file, * point your chrome browser to chrome://tracing/ and the load the .json file. */ -#define LINGUA_FRANCA_TRACE +#define LF_TRACE #include "reactor.h" #include "trace.h" #include "trace_util.h" diff --git a/util/tracing/trace_to_csv.c b/util/tracing/trace_to_csv.c index 4f12f7f4bf..a2bcfd91a2 100644 --- a/util/tracing/trace_to_csv.c +++ b/util/tracing/trace_to_csv.c @@ -29,7 +29,7 @@ THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * Standalone program to convert a Lingua Franca trace file to a comma-separated values * text file. */ -#define LINGUA_FRANCA_TRACE +#define LF_TRACE #include "reactor.h" #include "trace.h" #include "trace_util.h" diff --git a/util/tracing/trace_to_influxdb.c b/util/tracing/trace_to_influxdb.c index 2b84d47ebe..d8281abd01 100644 --- a/util/tracing/trace_to_influxdb.c +++ b/util/tracing/trace_to_influxdb.c @@ -108,7 +108,7 @@ THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * The data can then be viewed in the InfluxDB browser, or you can configure an external * tool such as Grafana to visualize it (see https://grafana.com/docs/grafana/latest/datasources/influxdb/). */ -#define LINGUA_FRANCA_TRACE +#define LF_TRACE #include "reactor.h" #include "trace.h" #include "trace_util.h" diff --git a/util/tracing/trace_util.c b/util/tracing/trace_util.c index 90f6935291..f688b560d4 100644 --- a/util/tracing/trace_util.c +++ b/util/tracing/trace_util.c @@ -29,7 +29,7 @@ THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * Standalone program to convert a Lingua Franca trace file to a comma-separated values * text file. */ -#define LINGUA_FRANCA_TRACE +#define LF_TRACE #include "reactor.h" #include "trace.h" #include "trace_util.h" diff --git a/util/tracing/trace_util.h b/util/tracing/trace_util.h index 52aa76fb0b..56eb9fe3e8 100644 --- a/util/tracing/trace_util.h +++ b/util/tracing/trace_util.h @@ -29,7 +29,7 @@ THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * Header file for common utilities used in converting Lingua Franca trace files * into other formats. */ -#define LINGUA_FRANCA_TRACE +#define LF_TRACE #include "reactor.h" #include "trace.h" From d23715ebcf648e24d26c1b2e66e075252e596ca3 Mon Sep 17 00:00:00 2001 From: Erling Rennemo Jellum Date: Wed, 21 Dec 2022 11:01:27 -0800 Subject: [PATCH 30/34] Update trace macro --- org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java | 2 +- util/tracing/trace_to_chrome.c | 2 +- util/tracing/trace_to_csv.c | 2 +- util/tracing/trace_to_influxdb.c | 2 +- util/tracing/trace_util.c | 2 +- util/tracing/trace_util.h | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java b/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java index 2470b86d98..d508306c8b 100644 --- a/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java +++ b/org.lflang/src/org/lflang/generator/c/CPreambleGenerator.java @@ -96,7 +96,7 @@ public static String generateDefineDirectives( } } if (tracing != null) { - targetConfig.compileDefinitions.put("LINGUA_FRANCA_TRACE", tracing.traceFileName); + targetConfig.compileDefinitions.put("LF_TRACE", tracing.traceFileName); } if (clockSyncIsOn) { code.pr(generateClockSyncDefineDirective( diff --git a/util/tracing/trace_to_chrome.c b/util/tracing/trace_to_chrome.c index a394a194ee..d39f53171e 100644 --- a/util/tracing/trace_to_chrome.c +++ b/util/tracing/trace_to_chrome.c @@ -30,7 +30,7 @@ THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * for viewing in Chrome's event visualizer. To visualize the resulting file, * point your chrome browser to chrome://tracing/ and the load the .json file. */ -#define LINGUA_FRANCA_TRACE +#define LF_TRACE #include "reactor.h" #include "trace.h" #include "trace_util.h" diff --git a/util/tracing/trace_to_csv.c b/util/tracing/trace_to_csv.c index 4f12f7f4bf..a2bcfd91a2 100644 --- a/util/tracing/trace_to_csv.c +++ b/util/tracing/trace_to_csv.c @@ -29,7 +29,7 @@ THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * Standalone program to convert a Lingua Franca trace file to a comma-separated values * text file. */ -#define LINGUA_FRANCA_TRACE +#define LF_TRACE #include "reactor.h" #include "trace.h" #include "trace_util.h" diff --git a/util/tracing/trace_to_influxdb.c b/util/tracing/trace_to_influxdb.c index 2b84d47ebe..d8281abd01 100644 --- a/util/tracing/trace_to_influxdb.c +++ b/util/tracing/trace_to_influxdb.c @@ -108,7 +108,7 @@ THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * The data can then be viewed in the InfluxDB browser, or you can configure an external * tool such as Grafana to visualize it (see https://grafana.com/docs/grafana/latest/datasources/influxdb/). */ -#define LINGUA_FRANCA_TRACE +#define LF_TRACE #include "reactor.h" #include "trace.h" #include "trace_util.h" diff --git a/util/tracing/trace_util.c b/util/tracing/trace_util.c index 90f6935291..f688b560d4 100644 --- a/util/tracing/trace_util.c +++ b/util/tracing/trace_util.c @@ -29,7 +29,7 @@ THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * Standalone program to convert a Lingua Franca trace file to a comma-separated values * text file. */ -#define LINGUA_FRANCA_TRACE +#define LF_TRACE #include "reactor.h" #include "trace.h" #include "trace_util.h" diff --git a/util/tracing/trace_util.h b/util/tracing/trace_util.h index 52aa76fb0b..56eb9fe3e8 100644 --- a/util/tracing/trace_util.h +++ b/util/tracing/trace_util.h @@ -29,7 +29,7 @@ THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * Header file for common utilities used in converting Lingua Franca trace files * into other formats. */ -#define LINGUA_FRANCA_TRACE +#define LF_TRACE #include "reactor.h" #include "trace.h" From efb947d50e8c0c99a61ff243369fcf830cbad6e9 Mon Sep 17 00:00:00 2001 From: Erling Rennemo Jellum Date: Wed, 21 Dec 2022 11:02:25 -0800 Subject: [PATCH 31/34] Bump reactor-c --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 5b772a5322..965e9b2ca7 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 5b772a5322b46b0738fcbd31e33f1175fde3c236 +Subproject commit 965e9b2ca73580640dfda35f760d0dabacad8f3a From 931b2b0b46657dfb67230256cd6d22068496fde7 Mon Sep 17 00:00:00 2001 From: Erling Rennemo Jellum Date: Thu, 22 Dec 2022 12:13:31 -0800 Subject: [PATCH 32/34] Bump reactor-c --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 965e9b2ca7..3e68ec231e 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 965e9b2ca73580640dfda35f760d0dabacad8f3a +Subproject commit 3e68ec231ea67decd9c05e2f6e6becaa12c9b07a From 09c77bb2ae9b41e2dbd528bc4b79012a17986926 Mon Sep 17 00:00:00 2001 From: Erling Rennemo Jellum Date: Thu, 22 Dec 2022 12:24:59 -0800 Subject: [PATCH 33/34] Bump reactor-c --- org.lflang/src/lib/c/reactor-c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/c/reactor-c b/org.lflang/src/lib/c/reactor-c index 3e68ec231e..d97620bb54 160000 --- a/org.lflang/src/lib/c/reactor-c +++ b/org.lflang/src/lib/c/reactor-c @@ -1 +1 @@ -Subproject commit 3e68ec231ea67decd9c05e2f6e6becaa12c9b07a +Subproject commit d97620bb54734a25521271169dadae68b6b3ad9b From 62e3c0ea7d55a13c3b1205bf21d2c915a985916f Mon Sep 17 00:00:00 2001 From: Erling Rennemo Jellum Date: Thu, 22 Dec 2022 12:54:45 -0800 Subject: [PATCH 34/34] Bump reactor-c-py --- org.lflang/src/lib/py/reactor-c-py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.lflang/src/lib/py/reactor-c-py b/org.lflang/src/lib/py/reactor-c-py index 3c8843e944..db57535edc 160000 --- a/org.lflang/src/lib/py/reactor-c-py +++ b/org.lflang/src/lib/py/reactor-c-py @@ -1 +1 @@ -Subproject commit 3c8843e94477f3972d149f2768985364b716f56b +Subproject commit db57535edc835c8676e65d8588994280b85322b9