Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec-tests / vhdl_json / vhdl_files / 2-exportOK / ghdl / ghdl / testsuite / vests / vhdl-93 / ashenden / compliant / ch_15_ire-b.json @ 3fd18385

History | View | Annotate | Download (21.7 KB)

1
{
2
  "DESIGN_FILE" : {
3
    "design_units" : [{
4
      "contexts" : [["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["SIMPLE_NAME", "dlx_instr"]]]]]], "library" : ["ARCHITECTURE_BODY", {
5
        "name" : ["IDENTIFIER", "behavior"], "entity" : ["IDENTIFIER", "ir_extender"], "ARCHITECTURE_DECLARATIVE_PART" : [{
6
          "definition" : ["SUBTYPE_DECLARATION", {
7
            "name" : ["IDENTIFIER", "upper_6_bits"], "typ" : {
8
              "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
9
                "ranges" : [["RANGE_WITH_DIRECTION", {
10
                  "direction" : "to", "from" : ["EXPRESSION", {
11
                    "args" : [["EXPRESSION", {
12
                      "args" : [["CONSTANT_VALUE", {
13
                        "value" : ["CST_LITERAL", "0"]}
14
                      ]]}
15
                    ]]}
16
                  ], "_to" : ["EXPRESSION", {
17
                    "args" : [["EXPRESSION", {
18
                      "args" : [["CONSTANT_VALUE", {
19
                        "value" : ["CST_LITERAL", "5"]}
20
                      ]]}
21
                    ]]}
22
                  ]}
23
                ]]}
24
              ]}
25
            }
26
          ]}
27
        , {
28
          "definition" : ["SUBTYPE_DECLARATION", {
29
            "name" : ["IDENTIFIER", "upper_16_bits"], "typ" : {
30
              "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
31
                "ranges" : [["RANGE_WITH_DIRECTION", {
32
                  "direction" : "to", "from" : ["EXPRESSION", {
33
                    "args" : [["EXPRESSION", {
34
                      "args" : [["CONSTANT_VALUE", {
35
                        "value" : ["CST_LITERAL", "0"]}
36
                      ]]}
37
                    ]]}
38
                  ], "_to" : ["EXPRESSION", {
39
                    "args" : [["EXPRESSION", {
40
                      "args" : [["CONSTANT_VALUE", {
41
                        "value" : ["CST_LITERAL", "15"]}
42
                      ]]}
43
                    ]]}
44
                  ]}
45
                ]]}
46
              ]}
47
            }
48
          ]}
49
        ], "ARCHITECTURE_STATEMENT_PART" : [["PROCESS_STATEMENT", {
50
          "id" : ["IDENTIFIER", "extender"], "active_sigs" : [["SIMPLE_NAME", "d"], ["SIMPLE_NAME", "immed_en"], ["SIMPLE_NAME", "immed_size_26"], ["SIMPLE_NAME", "immed_unsigned"]], "PROCESS_STATEMENT_PART" : [["IF_STATEMENT", {
51
            "if_cases" : [{
52
              "if_cond" : ["EXPRESSION", {
53
                "id" : "=", "args" : [["EXPRESSION", {
54
                  "args" : [["EXPRESSION", {
55
                    "args" : [["EXPRESSION", {
56
                      "args" : [["CALL", ["INDEXED_NAME", {
57
                        "id" : ["SIMPLE_NAME", "To_bit"], "exprs" : [["EXPRESSION", {
58
                          "args" : [["EXPRESSION", {
59
                            "args" : [["EXPRESSION", {
60
                              "args" : [["EXPRESSION", {
61
                                "args" : [["CALL", ["SIMPLE_NAME", "immed_en"]]]}
62
                              ]]}
63
                            ]]}
64
                          ]]}
65
                        ]]}
66
                      ]]]}
67
                    ]]}
68
                  ]]}
69
                ], ["EXPRESSION", {
70
                  "args" : [["EXPRESSION", {
71
                    "args" : [["EXPRESSION", {
72
                      "args" : [["CONSTANT_VALUE", {
73
                        "value" : ["CST_LITERAL", "'1'"]}
74
                      ]]}
75
                    ]]}
76
                  ]]}
77
                ]]}
78
              ], "if_block" : [["IF_STATEMENT", {
79
                "if_cases" : [{
80
                  "if_cond" : ["EXPRESSION", {
81
                    "id" : "=", "args" : [["EXPRESSION", {
82
                      "args" : [["EXPRESSION", {
83
                        "args" : [["EXPRESSION", {
84
                          "args" : [["CALL", ["INDEXED_NAME", {
85
                            "id" : ["SIMPLE_NAME", "To_bit"], "exprs" : [["EXPRESSION", {
86
                              "args" : [["EXPRESSION", {
87
                                "args" : [["EXPRESSION", {
88
                                  "args" : [["EXPRESSION", {
89
                                    "args" : [["CALL", ["SIMPLE_NAME", "immed_size_26"]]]}
90
                                  ]]}
91
                                ]]}
92
                              ]]}
93
                            ]]}
94
                          ]]]}
95
                        ]]}
96
                      ]]}
97
                    ], ["EXPRESSION", {
98
                      "args" : [["EXPRESSION", {
99
                        "args" : [["EXPRESSION", {
100
                          "args" : [["CONSTANT_VALUE", {
101
                            "value" : ["CST_LITERAL", "'1'"]}
102
                          ]]}
103
                        ]]}
104
                      ]]}
105
                    ]]}
106
                  ], "if_block" : [["IF_STATEMENT", {
107
                    "if_cases" : [{
108
                      "if_cond" : ["EXPRESSION", {
109
                        "id" : "=", "args" : [["EXPRESSION", {
110
                          "args" : [["EXPRESSION", {
111
                            "args" : [["EXPRESSION", {
112
                              "args" : [["CALL", ["INDEXED_NAME", {
113
                                "id" : ["SIMPLE_NAME", "To_bit"], "exprs" : [["EXPRESSION", {
114
                                  "args" : [["EXPRESSION", {
115
                                    "args" : [["EXPRESSION", {
116
                                      "args" : [["EXPRESSION", {
117
                                        "args" : [["CALL", ["SIMPLE_NAME", "immed_unsigned"]]]}
118
                                      ]]}
119
                                    ]]}
120
                                  ]]}
121
                                ]]}
122
                              ]]]}
123
                            ]]}
124
                          ]]}
125
                        ], ["EXPRESSION", {
126
                          "args" : [["EXPRESSION", {
127
                            "args" : [["EXPRESSION", {
128
                              "args" : [["CONSTANT_VALUE", {
129
                                "value" : ["CST_LITERAL", "'1'"]}
130
                              ]]}
131
                            ]]}
132
                          ]]}
133
                        ]]}
134
                      ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
135
                        "lhs" : ["SIMPLE_NAME", "q"], "rhs" : [{
136
                          "value" : ["EXPRESSION", {
137
                            "args" : [["EXPRESSION", {
138
                              "args" : [["EXPRESSION", {
139
                                "args" : [["EXPRESSION", {
140
                                  "id" : "&", "args" : [["EXPRESSION", {
141
                                    "args" : [["QUALIFIED_EXPRESSION", {
142
                                      "type_mark" : ["SIMPLE_NAME", "upper_6_bits"], "aggregate" : [{
143
                                        "choices" : [["OTHERS"]], "expr" : ["EXPRESSION", {
144
                                          "args" : [["EXPRESSION", {
145
                                            "args" : [["EXPRESSION", {
146
                                              "args" : [["EXPRESSION", {
147
                                                "args" : [["CONSTANT_VALUE", {
148
                                                  "value" : ["CST_LITERAL", "'0'"]}
149
                                                ]]}
150
                                              ]]}
151
                                            ]]}
152
                                          ]]}
153
                                        ]}
154
                                      ]}
155
                                    ]]}
156
                                  ], ["EXPRESSION", {
157
                                    "args" : [["CALL", ["SLICE_NAME", {
158
                                      "id" : ["SIMPLE_NAME", "d"], "range" : ["RANGE_WITH_DIRECTION", {
159
                                        "direction" : "to", "from" : ["EXPRESSION", {
160
                                          "args" : [["EXPRESSION", {
161
                                            "args" : [["CONSTANT_VALUE", {
162
                                              "value" : ["CST_LITERAL", "6"]}
163
                                            ]]}
164
                                          ]]}
165
                                        ], "_to" : ["EXPRESSION", {
166
                                          "args" : [["EXPRESSION", {
167
                                            "args" : [["CONSTANT_VALUE", {
168
                                              "value" : ["CST_LITERAL", "31"]}
169
                                            ]]}
170
                                          ]]}
171
                                        ]}
172
                                      ]}
173
                                    ]]]}
174
                                  ]]}
175
                                ]]}
176
                              ]]}
177
                            ]]}
178
                          ], "delay" : ["EXPRESSION", {
179
                            "args" : [["EXPRESSION", {
180
                              "args" : [["EXPRESSION", {
181
                                "args" : [["EXPRESSION", {
182
                                  "args" : [["CALL", ["SIMPLE_NAME", "Tpd"]]]}
183
                                ]]}
184
                              ]]}
185
                            ]]}
186
                          ]}
187
                        ]}
188
                      ]]}
189
                    ], "default" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
190
                      "lhs" : ["SIMPLE_NAME", "q"], "rhs" : [{
191
                        "value" : ["EXPRESSION", {
192
                          "args" : [["EXPRESSION", {
193
                            "args" : [["EXPRESSION", {
194
                              "args" : [["EXPRESSION", {
195
                                "id" : "&", "args" : [["EXPRESSION", {
196
                                  "args" : [["QUALIFIED_EXPRESSION", {
197
                                    "type_mark" : ["SIMPLE_NAME", "upper_6_bits"], "aggregate" : [{
198
                                      "choices" : [["OTHERS"]], "expr" : ["EXPRESSION", {
199
                                        "args" : [["EXPRESSION", {
200
                                          "args" : [["EXPRESSION", {
201
                                            "args" : [["EXPRESSION", {
202
                                              "args" : [["CALL", ["INDEXED_NAME", {
203
                                                "id" : ["SIMPLE_NAME", "d"], "exprs" : [["EXPRESSION", {
204
                                                  "args" : [["EXPRESSION", {
205
                                                    "args" : [["EXPRESSION", {
206
                                                      "args" : [["EXPRESSION", {
207
                                                        "args" : [["CONSTANT_VALUE", {
208
                                                          "value" : ["CST_LITERAL", "6"]}
209
                                                        ]]}
210
                                                      ]]}
211
                                                    ]]}
212
                                                  ]]}
213
                                                ]]}
214
                                              ]]]}
215
                                            ]]}
216
                                          ]]}
217
                                        ]]}
218
                                      ]}
219
                                    ]}
220
                                  ]]}
221
                                ], ["EXPRESSION", {
222
                                  "args" : [["CALL", ["SLICE_NAME", {
223
                                    "id" : ["SIMPLE_NAME", "d"], "range" : ["RANGE_WITH_DIRECTION", {
224
                                      "direction" : "to", "from" : ["EXPRESSION", {
225
                                        "args" : [["EXPRESSION", {
226
                                          "args" : [["CONSTANT_VALUE", {
227
                                            "value" : ["CST_LITERAL", "6"]}
228
                                          ]]}
229
                                        ]]}
230
                                      ], "_to" : ["EXPRESSION", {
231
                                        "args" : [["EXPRESSION", {
232
                                          "args" : [["CONSTANT_VALUE", {
233
                                            "value" : ["CST_LITERAL", "31"]}
234
                                          ]]}
235
                                        ]]}
236
                                      ]}
237
                                    ]}
238
                                  ]]]}
239
                                ]]}
240
                              ]]}
241
                            ]]}
242
                          ]]}
243
                        ], "delay" : ["EXPRESSION", {
244
                          "args" : [["EXPRESSION", {
245
                            "args" : [["EXPRESSION", {
246
                              "args" : [["EXPRESSION", {
247
                                "args" : [["CALL", ["SIMPLE_NAME", "Tpd"]]]}
248
                              ]]}
249
                            ]]}
250
                          ]]}
251
                        ]}
252
                      ]}
253
                    ]]}
254
                  ]]}
255
                ], "default" : [["IF_STATEMENT", {
256
                  "if_cases" : [{
257
                    "if_cond" : ["EXPRESSION", {
258
                      "id" : "=", "args" : [["EXPRESSION", {
259
                        "args" : [["EXPRESSION", {
260
                          "args" : [["EXPRESSION", {
261
                            "args" : [["CALL", ["INDEXED_NAME", {
262
                              "id" : ["SIMPLE_NAME", "To_bit"], "exprs" : [["EXPRESSION", {
263
                                "args" : [["EXPRESSION", {
264
                                  "args" : [["EXPRESSION", {
265
                                    "args" : [["EXPRESSION", {
266
                                      "args" : [["CALL", ["SIMPLE_NAME", "immed_unsigned"]]]}
267
                                    ]]}
268
                                  ]]}
269
                                ]]}
270
                              ]]}
271
                            ]]]}
272
                          ]]}
273
                        ]]}
274
                      ], ["EXPRESSION", {
275
                        "args" : [["EXPRESSION", {
276
                          "args" : [["EXPRESSION", {
277
                            "args" : [["CONSTANT_VALUE", {
278
                              "value" : ["CST_LITERAL", "'1'"]}
279
                            ]]}
280
                          ]]}
281
                        ]]}
282
                      ]]}
283
                    ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
284
                      "lhs" : ["SIMPLE_NAME", "q"], "rhs" : [{
285
                        "value" : ["EXPRESSION", {
286
                          "args" : [["EXPRESSION", {
287
                            "args" : [["EXPRESSION", {
288
                              "args" : [["EXPRESSION", {
289
                                "id" : "&", "args" : [["EXPRESSION", {
290
                                  "args" : [["QUALIFIED_EXPRESSION", {
291
                                    "type_mark" : ["SIMPLE_NAME", "upper_16_bits"], "aggregate" : [{
292
                                      "choices" : [["OTHERS"]], "expr" : ["EXPRESSION", {
293
                                        "args" : [["EXPRESSION", {
294
                                          "args" : [["EXPRESSION", {
295
                                            "args" : [["EXPRESSION", {
296
                                              "args" : [["CONSTANT_VALUE", {
297
                                                "value" : ["CST_LITERAL", "'0'"]}
298
                                              ]]}
299
                                            ]]}
300
                                          ]]}
301
                                        ]]}
302
                                      ]}
303
                                    ]}
304
                                  ]]}
305
                                ], ["EXPRESSION", {
306
                                  "args" : [["CALL", ["SLICE_NAME", {
307
                                    "id" : ["SIMPLE_NAME", "d"], "range" : ["RANGE_WITH_DIRECTION", {
308
                                      "direction" : "to", "from" : ["EXPRESSION", {
309
                                        "args" : [["EXPRESSION", {
310
                                          "args" : [["CONSTANT_VALUE", {
311
                                            "value" : ["CST_LITERAL", "16"]}
312
                                          ]]}
313
                                        ]]}
314
                                      ], "_to" : ["EXPRESSION", {
315
                                        "args" : [["EXPRESSION", {
316
                                          "args" : [["CONSTANT_VALUE", {
317
                                            "value" : ["CST_LITERAL", "31"]}
318
                                          ]]}
319
                                        ]]}
320
                                      ]}
321
                                    ]}
322
                                  ]]]}
323
                                ]]}
324
                              ]]}
325
                            ]]}
326
                          ]]}
327
                        ], "delay" : ["EXPRESSION", {
328
                          "args" : [["EXPRESSION", {
329
                            "args" : [["EXPRESSION", {
330
                              "args" : [["EXPRESSION", {
331
                                "args" : [["CALL", ["SIMPLE_NAME", "Tpd"]]]}
332
                              ]]}
333
                            ]]}
334
                          ]]}
335
                        ]}
336
                      ]}
337
                    ]]}
338
                  ], "default" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
339
                    "lhs" : ["SIMPLE_NAME", "q"], "rhs" : [{
340
                      "value" : ["EXPRESSION", {
341
                        "args" : [["EXPRESSION", {
342
                          "args" : [["EXPRESSION", {
343
                            "args" : [["EXPRESSION", {
344
                              "id" : "&", "args" : [["EXPRESSION", {
345
                                "args" : [["QUALIFIED_EXPRESSION", {
346
                                  "type_mark" : ["SIMPLE_NAME", "upper_16_bits"], "aggregate" : [{
347
                                    "choices" : [["OTHERS"]], "expr" : ["EXPRESSION", {
348
                                      "args" : [["EXPRESSION", {
349
                                        "args" : [["EXPRESSION", {
350
                                          "args" : [["EXPRESSION", {
351
                                            "args" : [["CALL", ["INDEXED_NAME", {
352
                                              "id" : ["SIMPLE_NAME", "d"], "exprs" : [["EXPRESSION", {
353
                                                "args" : [["EXPRESSION", {
354
                                                  "args" : [["EXPRESSION", {
355
                                                    "args" : [["EXPRESSION", {
356
                                                      "args" : [["CONSTANT_VALUE", {
357
                                                        "value" : ["CST_LITERAL", "16"]}
358
                                                      ]]}
359
                                                    ]]}
360
                                                  ]]}
361
                                                ]]}
362
                                              ]]}
363
                                            ]]]}
364
                                          ]]}
365
                                        ]]}
366
                                      ]]}
367
                                    ]}
368
                                  ]}
369
                                ]]}
370
                              ], ["EXPRESSION", {
371
                                "args" : [["CALL", ["SLICE_NAME", {
372
                                  "id" : ["SIMPLE_NAME", "d"], "range" : ["RANGE_WITH_DIRECTION", {
373
                                    "direction" : "to", "from" : ["EXPRESSION", {
374
                                      "args" : [["EXPRESSION", {
375
                                        "args" : [["CONSTANT_VALUE", {
376
                                          "value" : ["CST_LITERAL", "16"]}
377
                                        ]]}
378
                                      ]]}
379
                                    ], "_to" : ["EXPRESSION", {
380
                                      "args" : [["EXPRESSION", {
381
                                        "args" : [["CONSTANT_VALUE", {
382
                                          "value" : ["CST_LITERAL", "31"]}
383
                                        ]]}
384
                                      ]]}
385
                                    ]}
386
                                  ]}
387
                                ]]]}
388
                              ]]}
389
                            ]]}
390
                          ]]}
391
                        ]]}
392
                      ], "delay" : ["EXPRESSION", {
393
                        "args" : [["EXPRESSION", {
394
                          "args" : [["EXPRESSION", {
395
                            "args" : [["EXPRESSION", {
396
                              "args" : [["CALL", ["SIMPLE_NAME", "Tpd"]]]}
397
                            ]]}
398
                          ]]}
399
                        ]]}
400
                      ]}
401
                    ]}
402
                  ]]}
403
                ]]}
404
              ]]}
405
            ], "default" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
406
              "lhs" : ["SIMPLE_NAME", "q"], "rhs" : [{
407
                "value" : ["EXPRESSION", {
408
                  "args" : [["EXPRESSION", {
409
                    "args" : [["EXPRESSION", {
410
                      "args" : [["EXPRESSION", {
411
                        "args" : [["CALL", ["SIMPLE_NAME", "disabled_dlx_word"]]]}
412
                      ]]}
413
                    ]]}
414
                  ]]}
415
                ], "delay" : ["EXPRESSION", {
416
                  "args" : [["EXPRESSION", {
417
                    "args" : [["EXPRESSION", {
418
                      "args" : [["EXPRESSION", {
419
                        "args" : [["CALL", ["SIMPLE_NAME", "Tpd"]]]}
420
                      ]]}
421
                    ]]}
422
                  ]]}
423
                ]}
424
              ]}
425
            ]]}
426
          ]]}
427
        ]]}
428
      ]}
429
    ]}
430
  }