Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec-tests / vhdl_json / vhdl_files / 2-exportOK / ghdl / ghdl / testsuite / gna / ticket9 / index_range_test_A.json @ 3fd18385

History | View | Annotate | Download (4.98 KB)

1
{
2
  "DESIGN_FILE" : {
3
    "design_units" : [{
4
      "contexts" : [], "library" : ["ENTITY_DECLARATION", {
5
        "name" : ["IDENTIFIER", "comp2"], "ports" : [{
6
          "names" : [["IDENTIFIER", "a"]], "mode" : ["in"], "typ" : {
7
            "name" : ["SIMPLE_NAME", "bit_vector"]}
8
          }
9
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
10
      ]}
11
    , {
12
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
13
        "name" : ["IDENTIFIER", "arch"], "entity" : ["IDENTIFIER", "comp2"], "ARCHITECTURE_DECLARATIVE_PART" : [{
14
          "declaration" : ["CONSTANT_DECLARATION", {
15
            "names" : [["IDENTIFIER", "DATAPATH"]], "typ" : {
16
              "name" : ["SIMPLE_NAME", "natural"]}
17
            , "init_val" : ["EXPRESSION", {
18
              "args" : [["EXPRESSION", {
19
                "args" : [["EXPRESSION", {
20
                  "args" : [["EXPRESSION", {
21
                    "args" : [["CALL", ["ATTRIBUTE_NAME", {
22
                      "id" : ["SIMPLE_NAME", "a"], "designator" : ["SIMPLE_NAME", "length"]}
23
                    ]]]}
24
                  ]]}
25
                ]]}
26
              ]]}
27
            ]}
28
          ]}
29
        , {
30
          "declaration" : ["SIGNAL_DECLARATION", {
31
            "names" : [["IDENTIFIER", "tmp"]], "typ" : {
32
              "name" : ["SIMPLE_NAME", "bit"]}
33
            }
34
          ]}
35
        ], "ARCHITECTURE_STATEMENT_PART" : [["CONDITIONAL_SIGNAL_ASSIGNMENT", {
36
          "postponed" : false, "lhs" : ["SIMPLE_NAME", "tmp"], "rhs" : [{
37
            "expr" : [{
38
              "value" : ["EXPRESSION", {
39
                "args" : [["EXPRESSION", {
40
                  "args" : [["EXPRESSION", {
41
                    "args" : [["EXPRESSION", {
42
                      "args" : [["CALL", ["INDEXED_NAME", {
43
                        "id" : ["SIMPLE_NAME", "a"], "exprs" : [["EXPRESSION", {
44
                          "args" : [["EXPRESSION", {
45
                            "args" : [["EXPRESSION", {
46
                              "args" : [["EXPRESSION", {
47
                                "id" : "+", "args" : [["EXPRESSION", {
48
                                  "args" : [["CALL", ["SIMPLE_NAME", "DATAPATH"]]]}
49
                                ], ["EXPRESSION", {
50
                                  "args" : [["CONSTANT_VALUE", {
51
                                    "value" : ["CST_LITERAL", "3"]}
52
                                  ]]}
53
                                ]]}
54
                              ]]}
55
                            ]]}
56
                          ]]}
57
                        ]]}
58
                      ]]]}
59
                    ]]}
60
                  ]]}
61
                ]]}
62
              ]}
63
            ]}
64
          ]}
65
        ]]}
66
      ]}
67
    , {
68
      "contexts" : [], "library" : ["ENTITY_DECLARATION", {
69
        "name" : ["IDENTIFIER", "index_range_test_A"], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
70
      ]}
71
    , {
72
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
73
        "name" : ["IDENTIFIER", "arch"], "entity" : ["IDENTIFIER", "index_range_test_A"], "ARCHITECTURE_DECLARATIVE_PART" : [{
74
          "declaration" : ["CONSTANT_DECLARATION", {
75
            "names" : [["IDENTIFIER", "DATAPATH"]], "typ" : {
76
              "name" : ["SIMPLE_NAME", "natural"]}
77
            , "init_val" : ["EXPRESSION", {
78
              "args" : [["EXPRESSION", {
79
                "args" : [["EXPRESSION", {
80
                  "args" : [["EXPRESSION", {
81
                    "args" : [["CONSTANT_VALUE", {
82
                      "value" : ["CST_LITERAL", "16"]}
83
                    ]]}
84
                  ]]}
85
                ]]}
86
              ]]}
87
            ]}
88
          ]}
89
        , {
90
          "declaration" : ["SIGNAL_DECLARATION", {
91
            "names" : [["IDENTIFIER", "a"]], "typ" : {
92
              "name" : ["SIMPLE_NAME", "bit_vector"], "const" : ["INDEX_CONSTRAINT", {
93
                "ranges" : [["RANGE_WITH_DIRECTION", {
94
                  "direction" : "downto", "from" : ["EXPRESSION", {
95
                    "args" : [["EXPRESSION", {
96
                      "id" : "-", "args" : [["EXPRESSION", {
97
                        "args" : [["CALL", ["SIMPLE_NAME", "DATAPATH"]]]}
98
                      ], ["EXPRESSION", {
99
                        "args" : [["CONSTANT_VALUE", {
100
                          "value" : ["CST_LITERAL", "1"]}
101
                        ]]}
102
                      ]]}
103
                    ]]}
104
                  ], "_to" : ["EXPRESSION", {
105
                    "args" : [["EXPRESSION", {
106
                      "args" : [["CONSTANT_VALUE", {
107
                        "value" : ["CST_LITERAL", "0"]}
108
                      ]]}
109
                    ]]}
110
                  ]}
111
                ]]}
112
              ]}
113
            }
114
          ]}
115
        ], "ARCHITECTURE_STATEMENT_PART" : [["COMPONENT_INSTANTIATION_STATEMENT", {
116
          "name" : ["IDENTIFIER", "i_comp"], "inst_unit" : ["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["IDENTIFIER", "comp2"]]], "inst_unit_type" : "entity", "port_map" : [{
117
            "actual_designator" : ["SIMPLE_NAME", "a"]}
118
          ]}
119
        ]]}
120
      ]}
121
    ]}
122
  }