Change timing check condition to expression for better compatibility
This commit is contained in:
parent
6b2990cfec
commit
e0d0dff8d6
|
|
@ -24,8 +24,8 @@ PRecRem::PRecRem(event_t* reference_event,
|
||||||
PExpr* setup_limit,
|
PExpr* setup_limit,
|
||||||
PExpr* hold_limit,
|
PExpr* hold_limit,
|
||||||
pform_name_t* notifier,
|
pform_name_t* notifier,
|
||||||
pform_name_t* timestamp_cond,
|
PExpr* timestamp_cond,
|
||||||
pform_name_t* timecheck_cond,
|
PExpr* timecheck_cond,
|
||||||
pform_name_t* delayed_reference,
|
pform_name_t* delayed_reference,
|
||||||
pform_name_t* delayed_data)
|
pform_name_t* delayed_data)
|
||||||
:
|
:
|
||||||
|
|
@ -50,8 +50,8 @@ PSetupHold::PSetupHold(event_t* reference_event,
|
||||||
PExpr* setup_limit,
|
PExpr* setup_limit,
|
||||||
PExpr* hold_limit,
|
PExpr* hold_limit,
|
||||||
pform_name_t* notifier,
|
pform_name_t* notifier,
|
||||||
pform_name_t* timestamp_cond,
|
PExpr* timestamp_cond,
|
||||||
pform_name_t* timecheck_cond,
|
PExpr* timecheck_cond,
|
||||||
pform_name_t* delayed_reference,
|
pform_name_t* delayed_reference,
|
||||||
pform_name_t* delayed_data)
|
pform_name_t* delayed_data)
|
||||||
:
|
:
|
||||||
|
|
|
||||||
|
|
@ -43,8 +43,8 @@ class PTimingCheck : public LineInfo {
|
||||||
// This struct is used to parse the optional arguments
|
// This struct is used to parse the optional arguments
|
||||||
struct optional_args_t {
|
struct optional_args_t {
|
||||||
pform_name_t* notifier = nullptr;
|
pform_name_t* notifier = nullptr;
|
||||||
pform_name_t* timestamp_cond = nullptr;
|
PExpr* timestamp_cond = nullptr;
|
||||||
pform_name_t* timecheck_cond = nullptr;
|
PExpr* timecheck_cond = nullptr;
|
||||||
pform_name_t* delayed_reference = nullptr;
|
pform_name_t* delayed_reference = nullptr;
|
||||||
pform_name_t* delayed_data = nullptr;
|
pform_name_t* delayed_data = nullptr;
|
||||||
PExpr* event_based_flag = nullptr;
|
PExpr* event_based_flag = nullptr;
|
||||||
|
|
@ -71,8 +71,8 @@ class PRecRem : public PTimingCheck {
|
||||||
PExpr* setup_limit,
|
PExpr* setup_limit,
|
||||||
PExpr* hold_limit,
|
PExpr* hold_limit,
|
||||||
pform_name_t* notifier,
|
pform_name_t* notifier,
|
||||||
pform_name_t* timestamp_cond,
|
PExpr* timestamp_cond,
|
||||||
pform_name_t* timecheck_cond,
|
PExpr* timecheck_cond,
|
||||||
pform_name_t* delayed_reference,
|
pform_name_t* delayed_reference,
|
||||||
pform_name_t* delayed_data);
|
pform_name_t* delayed_data);
|
||||||
|
|
||||||
|
|
@ -91,8 +91,8 @@ class PRecRem : public PTimingCheck {
|
||||||
|
|
||||||
std::unique_ptr<pform_name_t> notifier_;
|
std::unique_ptr<pform_name_t> notifier_;
|
||||||
|
|
||||||
std::unique_ptr<pform_name_t> timestamp_cond_;
|
std::unique_ptr<PExpr> timestamp_cond_;
|
||||||
std::unique_ptr<pform_name_t> timecheck_cond_;
|
std::unique_ptr<PExpr> timecheck_cond_;
|
||||||
|
|
||||||
std::unique_ptr<pform_name_t> delayed_reference_;
|
std::unique_ptr<pform_name_t> delayed_reference_;
|
||||||
std::unique_ptr<pform_name_t> delayed_data_;
|
std::unique_ptr<pform_name_t> delayed_data_;
|
||||||
|
|
@ -109,8 +109,8 @@ class PSetupHold : public PTimingCheck {
|
||||||
PExpr* setup_limit,
|
PExpr* setup_limit,
|
||||||
PExpr* hold_limit,
|
PExpr* hold_limit,
|
||||||
pform_name_t* notifier,
|
pform_name_t* notifier,
|
||||||
pform_name_t* timestamp_cond,
|
PExpr* timestamp_cond,
|
||||||
pform_name_t* timecheck_cond,
|
PExpr* timecheck_cond,
|
||||||
pform_name_t* delayed_reference,
|
pform_name_t* delayed_reference,
|
||||||
pform_name_t* delayed_data);
|
pform_name_t* delayed_data);
|
||||||
|
|
||||||
|
|
@ -129,8 +129,8 @@ class PSetupHold : public PTimingCheck {
|
||||||
|
|
||||||
std::unique_ptr<pform_name_t> notifier_;
|
std::unique_ptr<pform_name_t> notifier_;
|
||||||
|
|
||||||
std::unique_ptr<pform_name_t> timestamp_cond_;
|
std::unique_ptr<PExpr> timestamp_cond_;
|
||||||
std::unique_ptr<pform_name_t> timecheck_cond_;
|
std::unique_ptr<PExpr> timecheck_cond_;
|
||||||
|
|
||||||
std::unique_ptr<pform_name_t> delayed_reference_;
|
std::unique_ptr<pform_name_t> delayed_reference_;
|
||||||
std::unique_ptr<pform_name_t> delayed_data_;
|
std::unique_ptr<pform_name_t> delayed_data_;
|
||||||
|
|
|
||||||
8
parse.y
8
parse.y
|
|
@ -6378,7 +6378,7 @@ setuphold_recrem_opt_timestamp_cond
|
||||||
PTimingCheck::optional_args_t* args = new PTimingCheck::optional_args_t;
|
PTimingCheck::optional_args_t* args = new PTimingCheck::optional_args_t;
|
||||||
$$ = args;
|
$$ = args;
|
||||||
}
|
}
|
||||||
| ',' hierarchy_identifier // End of list
|
| ',' expression // End of list
|
||||||
{
|
{
|
||||||
PTimingCheck::optional_args_t* args = new PTimingCheck::optional_args_t;
|
PTimingCheck::optional_args_t* args = new PTimingCheck::optional_args_t;
|
||||||
args->timestamp_cond = $2;
|
args->timestamp_cond = $2;
|
||||||
|
|
@ -6386,7 +6386,7 @@ setuphold_recrem_opt_timestamp_cond
|
||||||
}
|
}
|
||||||
| ',' setuphold_recrem_opt_timecheck_cond // Empty
|
| ',' setuphold_recrem_opt_timecheck_cond // Empty
|
||||||
{ $$ = $2; }
|
{ $$ = $2; }
|
||||||
| ',' hierarchy_identifier setuphold_recrem_opt_timecheck_cond
|
| ',' expression setuphold_recrem_opt_timecheck_cond
|
||||||
{
|
{
|
||||||
$$ = $3;
|
$$ = $3;
|
||||||
$$->timestamp_cond = $2;
|
$$->timestamp_cond = $2;
|
||||||
|
|
@ -6399,7 +6399,7 @@ setuphold_recrem_opt_timecheck_cond
|
||||||
PTimingCheck::optional_args_t* args = new PTimingCheck::optional_args_t;
|
PTimingCheck::optional_args_t* args = new PTimingCheck::optional_args_t;
|
||||||
$$ = args;
|
$$ = args;
|
||||||
}
|
}
|
||||||
| ',' hierarchy_identifier // End of list
|
| ',' expression // End of list
|
||||||
{
|
{
|
||||||
PTimingCheck::optional_args_t* args = new PTimingCheck::optional_args_t;
|
PTimingCheck::optional_args_t* args = new PTimingCheck::optional_args_t;
|
||||||
args->timecheck_cond = $2;
|
args->timecheck_cond = $2;
|
||||||
|
|
@ -6407,7 +6407,7 @@ setuphold_recrem_opt_timecheck_cond
|
||||||
}
|
}
|
||||||
| ',' setuphold_recrem_opt_delayed_reference // Empty
|
| ',' setuphold_recrem_opt_delayed_reference // Empty
|
||||||
{ $$ = $2; }
|
{ $$ = $2; }
|
||||||
| ',' hierarchy_identifier setuphold_recrem_opt_delayed_reference
|
| ',' expression setuphold_recrem_opt_delayed_reference
|
||||||
{
|
{
|
||||||
$$ = $3;
|
$$ = $3;
|
||||||
$$->timecheck_cond = $2;
|
$$->timecheck_cond = $2;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue