expression_s Struct Reference

#include <defines.h>

Data Fields

vectorvalue
exp_op_type op
esuppl suppl
int id
int ulid
int line
uint32 exec_num
union {
   uint32   all
   struct {
      uint32   last: 16
      uint32   first: 16
   }   part
col
vsignalsig
char * name
expr_stmtparent
expressionright
expressionleft
fsmtable
union {
   func_unit *   funit
   thread *   thr
   uint64 *   scale
   vecblk *   tvecs
   exp_dim *   dim
   dim_and_nba *   dim_nba
elem

Detailed Description

An expression is defined to be a logical combination of signals/values. Expressions may contain subexpressions (which are expressions in and of themselves). An measurable expression may only evaluate to TRUE (1) or FALSE (0). If the parent expression of this expression is NULL, then this expression is considered a root expression. The suppl contains the run-time information for its expression.


Field Documentation

union { ... } expression_s::col
union { ... } expression_s::elem

Column position of the beginning of the expression

Specifies unique ID for this expression in the parent

Referenced by bind_display_list(), bind_perform(), bind_remove(), bind_signal(), combination_event(), combination_get_exclude_list(), combination_is_expr_multi_node(), combination_list_missed(), combination_multi_vars(), combination_two_vars(), combination_unary(), db_add_declared_param(), db_add_expression(), db_add_statement(), db_bind_expr_tree(), db_connect_statement_false(), db_connect_statement_true(), db_create_attr_param(), db_create_expression(), db_create_statement(), db_parallelize_statement(), db_remove_statement(), db_remove_statement_from_current_funit(), db_statement_connect(), exclude_is_assert_excluded(), exclude_is_comb_excluded(), exclude_is_fsm_excluded(), exclude_set_assert_exclude(), exclude_set_comb_exclude(), exclude_set_fsm_exclude(), exclude_set_line_exclude(), exp_link_display(), exp_link_find(), exp_link_remove(), expression_create(), expression_dealloc(), expression_display(), expression_get_id(), expression_operate(), expression_string(), fsm_collect(), fsm_dealloc(), fsm_display_verbose(), fsm_get_coverage(), fsm_table_set(), fsm_var_add_expr(), fsm_var_bind_expr(), gen_item_compare(), gen_item_stringify(), generate_remove_stmt_helper(), instance_find_expression_by_exclusion_id(), line_collect(), line_display_verbose(), mod_parm_display(), ovl_display_verbose(), ovl_get_coverage(), param_find_and_set_expr_value(), sim_display_thread(), sim_expr_changed(), sim_expression(), sim_thread(), statement_find_statement(), statement_queue_compare(), stmt_blk_add_to_remove_list(), stmt_blk_remove(), stmt_link_display(), and stmt_link_find().

Column position of the end of the expression

Pointer to expression on left

Referenced by bind_task_function_namedblock(), bind_task_function_ports(), codegen_gen_expr(), combination_calc_depth(), combination_does_multi_exp_need_ul(), combination_get_exclude_list(), combination_get_missed_expr(), combination_get_tree_stats(), combination_is_expr_multi_node(), combination_list_missed(), combination_multi_expr_calc(), combination_multi_var_exprs(), combination_output_expr(), combination_reset_counted_expr_tree(), combination_two_vars(), combination_underline_tree(), db_add_expression(), db_bind_expr_tree(), exp_link_remove(), expression_assign(), expression_assign_expr_ids(), expression_contains_expr_calling_stmt(), expression_create(), expression_create_tmp_vecs(), expression_create_value(), expression_db_write(), expression_db_write_tree(), expression_dealloc(), expression_display(), expression_find_expr(), expression_find_params(), expression_find_rhs_sigs(), expression_find_uline_id(), expression_get_curr_dimension(), expression_get_first_line_expr(), expression_is_static_only_helper(), expression_op_func__add(), expression_op_func__add_a(), expression_op_func__and(), expression_op_func__and_a(), expression_op_func__arshift(), expression_op_func__arshift_a(), expression_op_func__assign(), expression_op_func__bitstoreal(), expression_op_func__bitstoshortreal(), expression_op_func__case(), expression_op_func__casex(), expression_op_func__casez(), expression_op_func__ceq(), expression_op_func__clog2(), expression_op_func__cne(), expression_op_func__cond_sel(), expression_op_func__divide(), expression_op_func__divide_a(), expression_op_func__dly_assign(), expression_op_func__dly_op(), expression_op_func__eor(), expression_op_func__eq(), expression_op_func__expand(), expression_op_func__exponent(), expression_op_func__ge(), expression_op_func__gt(), expression_op_func__idec(), expression_op_func__iinc(), expression_op_func__itor(), expression_op_func__land(), expression_op_func__le(), expression_op_func__list(), expression_op_func__lor(), expression_op_func__lshift(), expression_op_func__lshift_a(), expression_op_func__lt(), expression_op_func__mbit(), expression_op_func__mbit_neg(), expression_op_func__mbit_pos(), expression_op_func__mod(), expression_op_func__mod_a(), expression_op_func__multiply(), expression_op_func__multiply_a(), expression_op_func__nand(), expression_op_func__ne(), expression_op_func__nor(), expression_op_func__nxor(), expression_op_func__or(), expression_op_func__or_a(), expression_op_func__pdec(), expression_op_func__pinc(), expression_op_func__random(), expression_op_func__realtobits(), expression_op_func__repeat(), expression_op_func__repeat_dly(), expression_op_func__rshift(), expression_op_func__rshift_a(), expression_op_func__rtoi(), expression_op_func__sbit(), expression_op_func__shortrealtobits(), expression_op_func__signed(), expression_op_func__srandom(), expression_op_func__sub_a(), expression_op_func__subtract(), expression_op_func__test_plusargs(), expression_op_func__unsigned(), expression_op_func__urandom(), expression_op_func__urandom_range(), expression_op_func__value_plusargs(), expression_op_func__xor(), expression_op_func__xor_a(), expression_operate_recursively(), expression_resize(), expression_set_changed(), expression_set_eval_NN(), expression_set_signed(), expression_set_value(), fsm_gather_signals(), fsm_var_add_expr(), mod_parm_find_expr_and_remove(), ovl_get_coverage_point(), param_expr_eval(), parser_handle_case_statement_list(), parser_handle_generate_case_statement_list(), race_calc_stmt_blk_type(), race_check_one_block_assignment(), rank_gather_comb_cov(), sim_expr_changed(), sim_expression(), and sim_thread().

Specified line in file that this expression is found on

Referenced by bind_add(), bind_display_list(), bind_perform(), bind_signal(), bind_task_function_namedblock(), codegen_create_expr(), codegen_gen_expr(), combination_collect(), combination_underline(), db_add_defparam(), db_add_expression(), db_create_statement(), db_parallelize_statement(), db_remove_statement(), db_remove_statement_from_current_funit(), db_statement_connect(), exclude_expr_assign_and_recalc(), exclude_is_line_excluded(), exclude_set_line_exclude(), exp_link_display(), exp_link_find_by_pos(), expression_create(), expression_db_merge(), expression_db_write(), expression_dealloc(), expression_display(), expression_get_first_line_expr(), expression_get_last_line_expr(), expression_merge(), expression_op_func__bitstoreal(), expression_op_func__bitstoshortreal(), expression_op_func__itor(), expression_op_func__realtobits(), expression_op_func__rtoi(), expression_op_func__shortrealtobits(), expression_op_func__test_plusargs(), expression_op_func__urandom_range(), expression_op_func__value_plusargs(), expression_operate(), expression_resize(), expression_string(), fsm_arg_parse_trans(), fsm_var_bind_expr(), gen_item_resolve(), gen_item_stringify(), line_collect(), line_display_verbose(), line_get_stats(), param_find_and_set_expr_value(), parser_handle_case_statement(), parser_handle_generate_case_statement(), race_handle_race_condition(), rank_gather_expression_cov(), sim_display_thread(), sim_expr_changed(), statement_get_last_line_helper(), and stmt_link_display().

Name of signal/function/task for output purposes (only valid if we are binding to a signal, task or function

Referenced by bind_perform(), codegen_gen_expr(), combination_underline_tree(), db_parallelize_statement(), expression_create(), expression_db_write(), expression_dealloc(), gen_item_bind(), and ovl_is_coverage_point().

Expression operation type

Referenced by bind_display_list(), bind_param(), bind_signal(), bind_task_function_namedblock(), bind_task_function_ports(), codegen_gen_expr(), combination_calc_depth(), combination_display_verbose(), combination_does_multi_exp_need_ul(), combination_event(), combination_get_expression(), combination_get_missed_expr(), combination_get_tree_stats(), combination_is_expr_multi_node(), combination_multi_expr_calc(), combination_multi_var_exprs(), combination_multi_vars(), combination_two_vars(), combination_unary(), combination_underline(), combination_underline_tree(), db_add_expression(), db_bind_expr_tree(), db_create_expression(), db_parallelize_statement(), db_remove_statement_from_current_funit(), exclude_expr_assign_and_recalc(), exp_link_display(), exp_link_find_by_pos(), expression_assign(), expression_create(), expression_create_nba(), expression_create_tmp_vecs(), expression_create_value(), expression_db_merge(), expression_db_write(), expression_dealloc(), expression_display(), expression_find_params(), expression_find_rhs_sigs(), expression_get_curr_dimension(), expression_is_assigned(), expression_is_bit_select(), expression_is_in_rassign(), expression_is_last_select(), expression_is_nba_lhs(), expression_is_static_only_helper(), expression_merge(), expression_op_func__aedge(), expression_op_func__assign(), expression_op_func__bitstoreal(), expression_op_func__bitstoshortreal(), expression_op_func__dly_assign(), expression_op_func__dly_op(), expression_op_func__itor(), expression_op_func__mbit(), expression_op_func__mbit_neg(), expression_op_func__mbit_pos(), expression_op_func__null(), expression_op_func__random(), expression_op_func__realtobits(), expression_op_func__repeat_dly(), expression_op_func__rtoi(), expression_op_func__sbit(), expression_op_func__shortrealtobits(), expression_op_func__sig(), expression_op_func__srandom(), expression_op_func__test_plusargs(), expression_op_func__urandom(), expression_op_func__urandom_range(), expression_op_func__value_plusargs(), expression_operate(), expression_operate_recursively(), expression_resize(), expression_set_assigned(), expression_set_signed(), expression_set_value(), expression_string(), fsm_display_verbose(), fsm_get_coverage(), funit_size_elements(), gen_item_resolve(), line_collect(), line_display_verbose(), line_get_stats(), ovl_get_coverage_point(), ovl_is_coverage_point(), param_expr_eval(), parser_handle_case_statement_list(), parser_handle_generate_case_statement_list(), perf_gen_stats(), race_calc_expr_assignment(), race_calc_stmt_blk_type(), race_check_one_block_assignment(), race_find_head_statement_containing_statement_helper(), rank_gather_comb_cov(), rank_gather_expression_cov(), reentrant_count_afu_bits(), reentrant_restore_data_bits(), reentrant_store_data_bits(), sim_add_thread(), sim_display_thread(), sim_expr_changed(), sim_expression(), sim_thread(), sim_thread_pop_head(), sim_thread_push(), statement_dealloc_recursive(), statement_find_rhs_sigs(), vsignal_create_vec(), and vsignal_propagate().

struct { ... } expression_s::part

Pointer to expression on right

Referenced by bind_signal(), bind_task_function_ports(), codegen_gen_expr(), combination_calc_depth(), combination_does_multi_exp_need_ul(), combination_get_exclude_list(), combination_get_missed_expr(), combination_get_tree_stats(), combination_is_expr_multi_node(), combination_list_missed(), combination_multi_expr_calc(), combination_multi_var_exprs(), combination_output_expr(), combination_reset_counted_expr_tree(), combination_two_vars(), combination_underline_tree(), db_add_expression(), db_bind_expr_tree(), exp_link_remove(), expression_assign(), expression_assign_expr_ids(), expression_contains_expr_calling_stmt(), expression_create(), expression_create_tmp_vecs(), expression_create_value(), expression_db_write(), expression_db_write_tree(), expression_dealloc(), expression_display(), expression_find_expr(), expression_find_params(), expression_find_rhs_sigs(), expression_find_uline_id(), expression_get_curr_dimension(), expression_get_last_line_expr(), expression_is_last_select(), expression_is_static_only_helper(), expression_op_func__add(), expression_op_func__add_a(), expression_op_func__aedge(), expression_op_func__and(), expression_op_func__and_a(), expression_op_func__arshift(), expression_op_func__arshift_a(), expression_op_func__assign(), expression_op_func__case(), expression_op_func__casex(), expression_op_func__casez(), expression_op_func__ceq(), expression_op_func__cne(), expression_op_func__concat(), expression_op_func__cond(), expression_op_func__cond_sel(), expression_op_func__delay(), expression_op_func__dim(), expression_op_func__divide(), expression_op_func__divide_a(), expression_op_func__dly_assign(), expression_op_func__dly_op(), expression_op_func__eor(), expression_op_func__eq(), expression_op_func__expand(), expression_op_func__exponent(), expression_op_func__ge(), expression_op_func__gt(), expression_op_func__land(), expression_op_func__le(), expression_op_func__list(), expression_op_func__lor(), expression_op_func__lshift(), expression_op_func__lshift_a(), expression_op_func__lt(), expression_op_func__mbit(), expression_op_func__mbit_neg(), expression_op_func__mbit_pos(), expression_op_func__mod(), expression_op_func__mod_a(), expression_op_func__multiply(), expression_op_func__multiply_a(), expression_op_func__nand(), expression_op_func__ne(), expression_op_func__nedge(), expression_op_func__negate(), expression_op_func__nor(), expression_op_func__nxor(), expression_op_func__or(), expression_op_func__or_a(), expression_op_func__passign(), expression_op_func__pedge(), expression_op_func__random(), expression_op_func__repeat(), expression_op_func__repeat_dly(), expression_op_func__rshift(), expression_op_func__rshift_a(), expression_op_func__sassign(), expression_op_func__sbit(), expression_op_func__slist(), expression_op_func__sub_a(), expression_op_func__subtract(), expression_op_func__uand(), expression_op_func__uinv(), expression_op_func__unand(), expression_op_func__unor(), expression_op_func__unot(), expression_op_func__unxor(), expression_op_func__uor(), expression_op_func__urandom(), expression_op_func__urandom_range(), expression_op_func__uxor(), expression_op_func__value_plusargs(), expression_op_func__wait(), expression_op_func__xor(), expression_op_func__xor_a(), expression_operate_recursively(), expression_resize(), expression_set_changed(), expression_set_eval_NN(), expression_set_signed(), expression_set_value(), fsm_gather_signals(), fsm_var_add_expr(), mod_parm_find_expr_and_remove(), ovl_get_coverage_point(), param_expr_eval(), parser_handle_case_statement_list(), parser_handle_generate_case_statement_list(), race_calc_stmt_blk_type(), race_check_one_block_assignment(), rank_gather_comb_cov(), sim_add_thread(), sim_expression(), and sim_thread().

Pointer to parent functional unit's timescale value

Referenced by expression_db_read(), and expression_op_func__delay().

Supplemental information for the expression

Referenced by bind_signal(), bind_task_function_namedblock(), codegen_gen_expr(), combination_collect(), combination_display_verbose(), combination_does_multi_exp_need_ul(), combination_event(), combination_get_exclude_list(), combination_get_missed_expr(), combination_get_tree_stats(), combination_is_expr_multi_node(), combination_multi_expr_calc(), combination_multi_var_exprs(), combination_multi_vars(), combination_output_expr(), combination_reset_counted_expr_tree(), combination_reset_counted_exprs(), combination_two_vars(), combination_unary(), combination_underline_tree(), db_add_expression(), db_create_expression(), db_parallelize_statement(), exclude_assert_from_id(), exclude_expr_assign_and_recalc(), exclude_expr_from_id(), exclude_is_assert_excluded(), exclude_is_comb_excluded(), exclude_is_parent_excluded(), exclude_line_from_id(), expression_assign(), expression_contains_expr_calling_stmt(), expression_create(), expression_create_nba(), expression_create_value(), expression_db_merge(), expression_db_read(), expression_db_write(), expression_dealloc(), expression_display(), expression_find_rhs_sigs(), expression_get_curr_dimension(), expression_get_root_statement(), expression_is_assigned(), expression_is_bit_select(), expression_is_in_rassign(), expression_is_last_select(), expression_is_nba_lhs(), expression_is_static_only_helper(), expression_merge(), expression_op_func__aedge(), expression_op_func__delay(), expression_op_func__dly_assign(), expression_op_func__dly_op(), expression_op_func__eor(), expression_op_func__mbit(), expression_op_func__mbit_neg(), expression_op_func__mbit_pos(), expression_op_func__nb_call(), expression_op_func__nedge(), expression_op_func__pedge(), expression_op_func__repeat_dly(), expression_op_func__sbit(), expression_op_func__slist(), expression_op_func__wait(), expression_resize(), expression_set_assigned(), expression_set_changed(), expression_set_eval_NN(), expression_set_signed(), expression_set_tf(), expression_set_tf_preclear(), expression_set_value(), fsm_arg_parse_attr(), fsm_arg_parse_trans(), funit_size_elements(), gen_item_resolve(), inst_parm_add(), line_collect(), mod_parm_add(), ovl_collect(), ovl_display_verbose(), ovl_get_coverage(), ovl_get_coverage_point(), ovl_get_funit_stats(), race_calc_expr_assignment(), race_check_one_block_assignment(), rank_gather_comb_cov(), rank_gather_expression_cov(), reentrant_restore_data_bits(), reentrant_store_data_bits(), sim_add_thread(), sim_expr_changed(), sim_expression(), sim_thread(), and statement_dealloc_recursive().

Pointer to FSM table associated with this expression

Referenced by expression_create(), expression_operate(), fsm_db_read(), fsm_table_set(), fsm_var_add(), fsm_var_bind_stmt(), and sim_expression().

Pointer to next thread to be called

Current value and toggle information of this expression

Referenced by bind_perform(), bind_signal(), bind_task_function_namedblock(), codegen_gen_expr(), combination_get_tree_stats(), combination_two_vars(), combination_unary(), combination_underline_tree(), db_create_expr_from_static(), db_create_expression(), enumerate_resolve(), expression_assign(), expression_create(), expression_create_tmp_vecs(), expression_create_value(), expression_db_merge(), expression_db_read(), expression_db_write(), expression_dealloc(), expression_display(), expression_is_static_only_helper(), expression_merge(), expression_op_func__add(), expression_op_func__add_a(), expression_op_func__aedge(), expression_op_func__and(), expression_op_func__and_a(), expression_op_func__arshift(), expression_op_func__arshift_a(), expression_op_func__assign(), expression_op_func__bitstoreal(), expression_op_func__bitstoshortreal(), expression_op_func__case(), expression_op_func__casex(), expression_op_func__casez(), expression_op_func__ceq(), expression_op_func__clog2(), expression_op_func__cne(), expression_op_func__concat(), expression_op_func__cond(), expression_op_func__cond_sel(), expression_op_func__default(), expression_op_func__delay(), expression_op_func__divide(), expression_op_func__divide_a(), expression_op_func__dly_op(), expression_op_func__eq(), expression_op_func__expand(), expression_op_func__exponent(), expression_op_func__func_call(), expression_op_func__ge(), expression_op_func__gt(), expression_op_func__idec(), expression_op_func__iinc(), expression_op_func__itor(), expression_op_func__land(), expression_op_func__le(), expression_op_func__list(), expression_op_func__lor(), expression_op_func__lshift(), expression_op_func__lshift_a(), expression_op_func__lt(), expression_op_func__mbit(), expression_op_func__mbit_neg(), expression_op_func__mbit_pos(), expression_op_func__mod(), expression_op_func__mod_a(), expression_op_func__multiply(), expression_op_func__multiply_a(), expression_op_func__nand(), expression_op_func__ne(), expression_op_func__nedge(), expression_op_func__negate(), expression_op_func__nor(), expression_op_func__nxor(), expression_op_func__or(), expression_op_func__or_a(), expression_op_func__passign(), expression_op_func__pdec(), expression_op_func__pedge(), expression_op_func__pinc(), expression_op_func__random(), expression_op_func__realtime(), expression_op_func__realtobits(), expression_op_func__repeat(), expression_op_func__repeat_dly(), expression_op_func__rshift(), expression_op_func__rshift_a(), expression_op_func__rtoi(), expression_op_func__sassign(), expression_op_func__sbit(), expression_op_func__shortrealtobits(), expression_op_func__signed(), expression_op_func__srandom(), expression_op_func__sub_a(), expression_op_func__subtract(), expression_op_func__task_call(), expression_op_func__test_plusargs(), expression_op_func__time(), expression_op_func__uand(), expression_op_func__uinv(), expression_op_func__unand(), expression_op_func__unor(), expression_op_func__unot(), expression_op_func__unsigned(), expression_op_func__unxor(), expression_op_func__uor(), expression_op_func__urandom(), expression_op_func__urandom_range(), expression_op_func__uxor(), expression_op_func__value_plusargs(), expression_op_func__wait(), expression_op_func__xor(), expression_op_func__xor_a(), expression_operate(), expression_resize(), expression_set_signed(), expression_set_tf(), expression_set_tf_preclear(), expression_set_value(), fsm_arg_parse_attr(), fsm_arg_parse_state(), fsm_arg_parse_trans(), fsm_arg_parse_value(), fsm_create_tables(), fsm_db_read(), fsm_display_arc_verbose(), fsm_display_state_verbose(), fsm_get_coverage(), fsm_table_set(), funit_size_elements(), inst_parm_add(), ovl_get_coverage_point(), param_expr_eval(), param_resolve_declared(), param_resolve_override(), race_check_one_block_assignment(), reentrant_count_afu_bits(), reentrant_restore_data_bits(), reentrant_store_data_bits(), static_expr_calc_lsb_and_width_post(), static_expr_gen(), and static_expr_gen_unary().


The documentation for this struct was generated from the following file:
Generated on Sun Nov 21 00:55:43 2010 for Covered by  doxygen 1.6.3