This project is mirrored from https://www-csr.bessy.de/control/SoftDist/sequencer/repo/branch-2-2.git.
Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer or owner.
Last successful update .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer or owner.
Last successful update .
- Sep 26, 2013
-
-
benjamin.franksen authored
I forgot to add the array index to the varId when iterating over a multi-PV array.
-
benjamin.franksen authored
-
benjamin.franksen authored
-
- Sep 25, 2013
-
-
benjamin.franksen authored
-
benjamin.franksen authored
-
benjamin.franksen authored
-
benjamin.franksen authored
-
- Sep 09, 2013
-
-
benjamin.franksen authored
-
benjamin.franksen authored
-
- Sep 24, 2013
-
-
benjamin.franksen authored
This patch also gets rid of the ugly seq_sync_timeout hack.
-
benjamin.franksen authored
-
benjamin.franksen authored
This is clearer and more robust than relying on the (incidental) truth value of a pvStat value.
-
benjamin.franksen authored
This brings asynchronous pvGet to the same standard w.r.t. multi-PV arrays as pvPut. Another slight improvement: in non-safe mode, if a variable is not assigned to a PV, then return TRUE, so that when testing in a condition it does not hang forever.
-
benjamin.franksen authored
-
benjamin.franksen authored
-
benjamin.franksen authored
Another one of the long overdue re-factorings. The new header file seq_snc.h contains all the definitions that are shared between the snc generated code and the run-time library. What remains in seqCom.h is the public API for C code that wants to interact with an SNL program.
-
benjamin.franksen authored
Members are no longer identified with variables in the syntax. Member selection "operators" ('.' and '->') are no longer treated as binary operators. Instead, member selection gets a new syntax node type E_SELECT, and members (only allowed as rhs of a member selection) are not E_VAR, but E_MEMBER. This all works because members are not first class in C, that is "x.(name)" is a syntax error. This is a simple solution for the recurring annoyance of snc issuing "undefined variable" warnings. Declaring members in a foreign declaration becomes obsolete.
-
benjamin.franksen authored
-
benjamin.franksen authored
-
benjamin.franksen authored
This fixes a bug that crept in when implementing the new variable initialization code for variables with global lifetime. The problem was that the initialization variable shadowed the global variable in non-reentrant mode, which made the initialization a no-op.
-
benjamin.franksen authored
-
benjamin.franksen authored
-
benjamin.franksen authored
-
benjamin.franksen authored
-
benjamin.franksen authored
-
benjamin.franksen authored
While it was always allowed to use arbitrary expressions for the argument to delay(), this never worked as one would expect if the expression depended on e.g. monitored variables. The reason is that previously the delay expression was evaluated once for all delays appearing in conditions inside a state when the state was entered. Later checks whether the delay has expired used the cached delay value. Now, delay expressions are evaluated like all other parts of the state transition condition and seq_delay() takes a double argument instead of a delay id. As a (transparent) side effect, if the delay has not yet expired, the minimum time to wait for events is adjusted. This adjustment is now more precise, since we do not store the delay but rather the (future) time when the wakeup should happen. The new implementation makes a lot of code obsolete which has consequently been deleted: - type DELAY_ID and all mentions of delay ids - assignment of delay ids in the compiler - the special cases FT_DELAY for the delay() builtin and the special E_DELAY syntax node type - generated delay init functions - seq_delayInit() - clearDelays() and calcTimeout() in seq_task - array members delay, delayExpired of struct state_set instead there is now double wakeupTime - member numDelays in various structs - assign_next_delay_id in the compiler
-
benjamin.franksen authored
-
benjamin.franksen authored
-
benjamin.franksen authored
-
benjamin.franksen authored
-
benjamin.franksen authored
-
benjamin.franksen authored
With foreign types we can no longer generate default initializers in a portable way, as was done previously (in reentrant mode). We now leave off initializers from the UserVar struct and instead initialize the members one by one (using memcpy) from statically initialized single values.
-
benjamin.franksen authored
-
benjamin.franksen authored
-
- Sep 19, 2013
-
-
benjamin.franksen authored
-
benjamin.franksen authored
-
- Jul 11, 2013
-
-
benjamin.franksen authored
-
- Sep 19, 2013
-
-
benjamin.franksen authored
-
benjamin.franksen authored
-
benjamin.franksen authored
-