aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--python/libghdl/thin/vhdl/nodes.py728
-rw-r--r--src/synth/ghdlsynth_gates.h15
-rw-r--r--src/synth/netlists-builders.adb2
-rw-r--r--src/synth/netlists-disp_vhdl.adb16
-rw-r--r--src/synth/netlists-gates.ads17
-rw-r--r--src/synth/synth-oper.adb25
-rw-r--r--src/synth/synth-static_oper.adb2
-rw-r--r--src/vhdl/vhdl-ieee-std_logic_1164.adb14
-rw-r--r--src/vhdl/vhdl-nodes.ads8
9 files changed, 438 insertions, 389 deletions
diff --git a/python/libghdl/thin/vhdl/nodes.py b/python/libghdl/thin/vhdl/nodes.py
index d40f1560e..1c15d0bae 100644
--- a/python/libghdl/thin/vhdl/nodes.py
+++ b/python/libghdl/thin/vhdl/nodes.py
@@ -1177,368 +1177,372 @@ class Iir_Predefined:
Ieee_1164_Scalar_Is_X = 199
Ieee_1164_Rising_Edge = 200
Ieee_1164_Falling_Edge = 201
- Ieee_1164_Vector_And_Reduce = 202
- Ieee_1164_Vector_Or_Reduce = 203
- Ieee_1164_Vector_Sll = 204
- Ieee_1164_Vector_Srl = 205
- Ieee_1164_Vector_Rol = 206
- Ieee_1164_Vector_Ror = 207
- Ieee_1164_Condition_Operator = 208
- Ieee_Numeric_Std_Toint_Uns_Nat = 209
- Ieee_Numeric_Std_Toint_Sgn_Int = 210
- Ieee_Numeric_Std_Touns_Nat_Nat_Uns = 211
- Ieee_Numeric_Std_Touns_Nat_Uns_Uns = 212
- Ieee_Numeric_Std_Tosgn_Int_Nat_Sgn = 213
- Ieee_Numeric_Std_Tosgn_Int_Sgn_Sgn = 214
- Ieee_Numeric_Std_Resize_Uns_Nat = 215
- Ieee_Numeric_Std_Resize_Sgn_Nat = 216
- Ieee_Numeric_Std_Resize_Uns_Uns = 217
- Ieee_Numeric_Std_Resize_Sgn_Sgn = 218
- Ieee_Numeric_Std_Add_Uns_Uns = 219
- Ieee_Numeric_Std_Add_Uns_Nat = 220
- Ieee_Numeric_Std_Add_Nat_Uns = 221
- Ieee_Numeric_Std_Add_Uns_Log = 222
- Ieee_Numeric_Std_Add_Log_Uns = 223
- Ieee_Numeric_Std_Add_Sgn_Sgn = 224
- Ieee_Numeric_Std_Add_Sgn_Int = 225
- Ieee_Numeric_Std_Add_Int_Sgn = 226
- Ieee_Numeric_Std_Add_Sgn_Log = 227
- Ieee_Numeric_Std_Add_Log_Sgn = 228
- Ieee_Numeric_Std_Sub_Uns_Uns = 229
- Ieee_Numeric_Std_Sub_Uns_Nat = 230
- Ieee_Numeric_Std_Sub_Nat_Uns = 231
- Ieee_Numeric_Std_Sub_Uns_Log = 232
- Ieee_Numeric_Std_Sub_Log_Uns = 233
- Ieee_Numeric_Std_Sub_Sgn_Sgn = 234
- Ieee_Numeric_Std_Sub_Sgn_Int = 235
- Ieee_Numeric_Std_Sub_Int_Sgn = 236
- Ieee_Numeric_Std_Sub_Sgn_Log = 237
- Ieee_Numeric_Std_Sub_Log_Sgn = 238
- Ieee_Numeric_Std_Mul_Uns_Uns = 239
- Ieee_Numeric_Std_Mul_Uns_Nat = 240
- Ieee_Numeric_Std_Mul_Nat_Uns = 241
- Ieee_Numeric_Std_Mul_Sgn_Sgn = 242
- Ieee_Numeric_Std_Mul_Sgn_Int = 243
- Ieee_Numeric_Std_Mul_Int_Sgn = 244
- Ieee_Numeric_Std_Div_Uns_Uns = 245
- Ieee_Numeric_Std_Div_Uns_Nat = 246
- Ieee_Numeric_Std_Div_Nat_Uns = 247
- Ieee_Numeric_Std_Div_Sgn_Sgn = 248
- Ieee_Numeric_Std_Div_Sgn_Int = 249
- Ieee_Numeric_Std_Div_Int_Sgn = 250
- Ieee_Numeric_Std_Rem_Uns_Uns = 251
- Ieee_Numeric_Std_Rem_Uns_Nat = 252
- Ieee_Numeric_Std_Rem_Nat_Uns = 253
- Ieee_Numeric_Std_Rem_Sgn_Sgn = 254
- Ieee_Numeric_Std_Rem_Sgn_Int = 255
- Ieee_Numeric_Std_Rem_Int_Sgn = 256
- Ieee_Numeric_Std_Mod_Uns_Uns = 257
- Ieee_Numeric_Std_Mod_Uns_Nat = 258
- Ieee_Numeric_Std_Mod_Nat_Uns = 259
- Ieee_Numeric_Std_Mod_Sgn_Sgn = 260
- Ieee_Numeric_Std_Mod_Sgn_Int = 261
- Ieee_Numeric_Std_Mod_Int_Sgn = 262
- Ieee_Numeric_Std_Gt_Uns_Uns = 263
- Ieee_Numeric_Std_Gt_Uns_Nat = 264
- Ieee_Numeric_Std_Gt_Nat_Uns = 265
- Ieee_Numeric_Std_Gt_Sgn_Sgn = 266
- Ieee_Numeric_Std_Gt_Sgn_Int = 267
- Ieee_Numeric_Std_Gt_Int_Sgn = 268
- Ieee_Numeric_Std_Lt_Uns_Uns = 269
- Ieee_Numeric_Std_Lt_Uns_Nat = 270
- Ieee_Numeric_Std_Lt_Nat_Uns = 271
- Ieee_Numeric_Std_Lt_Sgn_Sgn = 272
- Ieee_Numeric_Std_Lt_Sgn_Int = 273
- Ieee_Numeric_Std_Lt_Int_Sgn = 274
- Ieee_Numeric_Std_Le_Uns_Uns = 275
- Ieee_Numeric_Std_Le_Uns_Nat = 276
- Ieee_Numeric_Std_Le_Nat_Uns = 277
- Ieee_Numeric_Std_Le_Sgn_Sgn = 278
- Ieee_Numeric_Std_Le_Sgn_Int = 279
- Ieee_Numeric_Std_Le_Int_Sgn = 280
- Ieee_Numeric_Std_Ge_Uns_Uns = 281
- Ieee_Numeric_Std_Ge_Uns_Nat = 282
- Ieee_Numeric_Std_Ge_Nat_Uns = 283
- Ieee_Numeric_Std_Ge_Sgn_Sgn = 284
- Ieee_Numeric_Std_Ge_Sgn_Int = 285
- Ieee_Numeric_Std_Ge_Int_Sgn = 286
- Ieee_Numeric_Std_Eq_Uns_Uns = 287
- Ieee_Numeric_Std_Eq_Uns_Nat = 288
- Ieee_Numeric_Std_Eq_Nat_Uns = 289
- Ieee_Numeric_Std_Eq_Sgn_Sgn = 290
- Ieee_Numeric_Std_Eq_Sgn_Int = 291
- Ieee_Numeric_Std_Eq_Int_Sgn = 292
- Ieee_Numeric_Std_Ne_Uns_Uns = 293
- Ieee_Numeric_Std_Ne_Uns_Nat = 294
- Ieee_Numeric_Std_Ne_Nat_Uns = 295
- Ieee_Numeric_Std_Ne_Sgn_Sgn = 296
- Ieee_Numeric_Std_Ne_Sgn_Int = 297
- Ieee_Numeric_Std_Ne_Int_Sgn = 298
- Ieee_Numeric_Std_Match_Gt_Uns_Uns = 299
- Ieee_Numeric_Std_Match_Gt_Uns_Nat = 300
- Ieee_Numeric_Std_Match_Gt_Nat_Uns = 301
- Ieee_Numeric_Std_Match_Gt_Sgn_Sgn = 302
- Ieee_Numeric_Std_Match_Gt_Sgn_Int = 303
- Ieee_Numeric_Std_Match_Gt_Int_Sgn = 304
- Ieee_Numeric_Std_Match_Lt_Uns_Uns = 305
- Ieee_Numeric_Std_Match_Lt_Uns_Nat = 306
- Ieee_Numeric_Std_Match_Lt_Nat_Uns = 307
- Ieee_Numeric_Std_Match_Lt_Sgn_Sgn = 308
- Ieee_Numeric_Std_Match_Lt_Sgn_Int = 309
- Ieee_Numeric_Std_Match_Lt_Int_Sgn = 310
- Ieee_Numeric_Std_Match_Le_Uns_Uns = 311
- Ieee_Numeric_Std_Match_Le_Uns_Nat = 312
- Ieee_Numeric_Std_Match_Le_Nat_Uns = 313
- Ieee_Numeric_Std_Match_Le_Sgn_Sgn = 314
- Ieee_Numeric_Std_Match_Le_Sgn_Int = 315
- Ieee_Numeric_Std_Match_Le_Int_Sgn = 316
- Ieee_Numeric_Std_Match_Ge_Uns_Uns = 317
- Ieee_Numeric_Std_Match_Ge_Uns_Nat = 318
- Ieee_Numeric_Std_Match_Ge_Nat_Uns = 319
- Ieee_Numeric_Std_Match_Ge_Sgn_Sgn = 320
- Ieee_Numeric_Std_Match_Ge_Sgn_Int = 321
- Ieee_Numeric_Std_Match_Ge_Int_Sgn = 322
- Ieee_Numeric_Std_Match_Eq_Uns_Uns = 323
- Ieee_Numeric_Std_Match_Eq_Uns_Nat = 324
- Ieee_Numeric_Std_Match_Eq_Nat_Uns = 325
- Ieee_Numeric_Std_Match_Eq_Sgn_Sgn = 326
- Ieee_Numeric_Std_Match_Eq_Sgn_Int = 327
- Ieee_Numeric_Std_Match_Eq_Int_Sgn = 328
- Ieee_Numeric_Std_Match_Ne_Uns_Uns = 329
- Ieee_Numeric_Std_Match_Ne_Uns_Nat = 330
- Ieee_Numeric_Std_Match_Ne_Nat_Uns = 331
- Ieee_Numeric_Std_Match_Ne_Sgn_Sgn = 332
- Ieee_Numeric_Std_Match_Ne_Sgn_Int = 333
- Ieee_Numeric_Std_Match_Ne_Int_Sgn = 334
- Ieee_Numeric_Std_Sll_Uns_Int = 335
- Ieee_Numeric_Std_Sll_Sgn_Int = 336
- Ieee_Numeric_Std_Srl_Uns_Int = 337
- Ieee_Numeric_Std_Srl_Sgn_Int = 338
- Ieee_Numeric_Std_Sla_Uns_Int = 339
- Ieee_Numeric_Std_Sla_Sgn_Int = 340
- Ieee_Numeric_Std_Sra_Uns_Int = 341
- Ieee_Numeric_Std_Sra_Sgn_Int = 342
- Ieee_Numeric_Std_And_Uns_Uns = 343
- Ieee_Numeric_Std_And_Sgn_Sgn = 344
- Ieee_Numeric_Std_Or_Uns_Uns = 345
- Ieee_Numeric_Std_Or_Sgn_Sgn = 346
- Ieee_Numeric_Std_Nand_Uns_Uns = 347
- Ieee_Numeric_Std_Nand_Sgn_Sgn = 348
- Ieee_Numeric_Std_Nor_Uns_Uns = 349
- Ieee_Numeric_Std_Nor_Sgn_Sgn = 350
- Ieee_Numeric_Std_Xor_Uns_Uns = 351
- Ieee_Numeric_Std_Xor_Sgn_Sgn = 352
- Ieee_Numeric_Std_Xnor_Uns_Uns = 353
- Ieee_Numeric_Std_Xnor_Sgn_Sgn = 354
- Ieee_Numeric_Std_Not_Uns = 355
- Ieee_Numeric_Std_Not_Sgn = 356
- Ieee_Numeric_Std_Abs_Sgn = 357
- Ieee_Numeric_Std_Neg_Uns = 358
- Ieee_Numeric_Std_Neg_Sgn = 359
- Ieee_Numeric_Std_Min_Uns_Uns = 360
- Ieee_Numeric_Std_Min_Uns_Nat = 361
- Ieee_Numeric_Std_Min_Nat_Uns = 362
- Ieee_Numeric_Std_Min_Sgn_Sgn = 363
- Ieee_Numeric_Std_Min_Sgn_Int = 364
- Ieee_Numeric_Std_Min_Int_Sgn = 365
- Ieee_Numeric_Std_Max_Uns_Uns = 366
- Ieee_Numeric_Std_Max_Uns_Nat = 367
- Ieee_Numeric_Std_Max_Nat_Uns = 368
- Ieee_Numeric_Std_Max_Sgn_Sgn = 369
- Ieee_Numeric_Std_Max_Sgn_Int = 370
- Ieee_Numeric_Std_Max_Int_Sgn = 371
- Ieee_Numeric_Std_Shf_Left_Uns_Nat = 372
- Ieee_Numeric_Std_Shf_Right_Uns_Nat = 373
- Ieee_Numeric_Std_Shf_Left_Sgn_Nat = 374
- Ieee_Numeric_Std_Shf_Right_Sgn_Nat = 375
- Ieee_Numeric_Std_Rot_Left_Uns_Nat = 376
- Ieee_Numeric_Std_Rot_Right_Uns_Nat = 377
- Ieee_Numeric_Std_Rot_Left_Sgn_Nat = 378
- Ieee_Numeric_Std_Rot_Right_Sgn_Nat = 379
- Ieee_Numeric_Std_Match_Log = 380
- Ieee_Numeric_Std_Match_Uns = 381
- Ieee_Numeric_Std_Match_Sgn = 382
- Ieee_Numeric_Std_Match_Slv = 383
- Ieee_Numeric_Std_Match_Suv = 384
- Ieee_Numeric_Std_To_01_Uns = 385
- Ieee_Numeric_Std_To_01_Sgn = 386
- Ieee_Math_Real_Ceil = 387
- Ieee_Math_Real_Floor = 388
- Ieee_Math_Real_Round = 389
- Ieee_Math_Real_Log2 = 390
- Ieee_Math_Real_Sin = 391
- Ieee_Math_Real_Cos = 392
- Ieee_Std_Logic_Unsigned_Add_Slv_Slv = 393
- Ieee_Std_Logic_Unsigned_Add_Slv_Int = 394
- Ieee_Std_Logic_Unsigned_Add_Int_Slv = 395
- Ieee_Std_Logic_Unsigned_Add_Slv_Log = 396
- Ieee_Std_Logic_Unsigned_Add_Log_Slv = 397
- Ieee_Std_Logic_Unsigned_Sub_Slv_Slv = 398
- Ieee_Std_Logic_Unsigned_Sub_Slv_Int = 399
- Ieee_Std_Logic_Unsigned_Sub_Int_Slv = 400
- Ieee_Std_Logic_Unsigned_Sub_Slv_Log = 401
- Ieee_Std_Logic_Unsigned_Sub_Log_Slv = 402
- Ieee_Std_Logic_Unsigned_Mul_Slv_Slv = 403
- Ieee_Std_Logic_Unsigned_Lt_Slv_Slv = 404
- Ieee_Std_Logic_Unsigned_Lt_Slv_Int = 405
- Ieee_Std_Logic_Unsigned_Lt_Int_Slv = 406
- Ieee_Std_Logic_Unsigned_Le_Slv_Slv = 407
- Ieee_Std_Logic_Unsigned_Le_Slv_Int = 408
- Ieee_Std_Logic_Unsigned_Le_Int_Slv = 409
- Ieee_Std_Logic_Unsigned_Gt_Slv_Slv = 410
- Ieee_Std_Logic_Unsigned_Gt_Slv_Int = 411
- Ieee_Std_Logic_Unsigned_Gt_Int_Slv = 412
- Ieee_Std_Logic_Unsigned_Ge_Slv_Slv = 413
- Ieee_Std_Logic_Unsigned_Ge_Slv_Int = 414
- Ieee_Std_Logic_Unsigned_Ge_Int_Slv = 415
- Ieee_Std_Logic_Unsigned_Eq_Slv_Slv = 416
- Ieee_Std_Logic_Unsigned_Eq_Slv_Int = 417
- Ieee_Std_Logic_Unsigned_Eq_Int_Slv = 418
- Ieee_Std_Logic_Unsigned_Ne_Slv_Slv = 419
- Ieee_Std_Logic_Unsigned_Ne_Slv_Int = 420
- Ieee_Std_Logic_Unsigned_Ne_Int_Slv = 421
- Ieee_Std_Logic_Unsigned_Conv_Integer = 422
- Ieee_Std_Logic_Signed_Add_Slv_Slv = 423
- Ieee_Std_Logic_Signed_Add_Slv_Int = 424
- Ieee_Std_Logic_Signed_Add_Int_Slv = 425
- Ieee_Std_Logic_Signed_Add_Slv_Log = 426
- Ieee_Std_Logic_Signed_Add_Log_Slv = 427
- Ieee_Std_Logic_Signed_Sub_Slv_Slv = 428
- Ieee_Std_Logic_Signed_Sub_Slv_Int = 429
- Ieee_Std_Logic_Signed_Sub_Int_Slv = 430
- Ieee_Std_Logic_Signed_Sub_Slv_Log = 431
- Ieee_Std_Logic_Signed_Sub_Log_Slv = 432
- Ieee_Std_Logic_Signed_Mul_Slv_Slv = 433
- Ieee_Std_Logic_Arith_Conv_Unsigned_Int = 434
- Ieee_Std_Logic_Arith_Conv_Unsigned_Uns = 435
- Ieee_Std_Logic_Arith_Conv_Unsigned_Sgn = 436
- Ieee_Std_Logic_Arith_Conv_Unsigned_Log = 437
- Ieee_Std_Logic_Arith_Conv_Integer_Int = 438
- Ieee_Std_Logic_Arith_Conv_Integer_Uns = 439
- Ieee_Std_Logic_Arith_Conv_Integer_Sgn = 440
- Ieee_Std_Logic_Arith_Conv_Integer_Log = 441
- Ieee_Std_Logic_Arith_Conv_Vector_Int = 442
- Ieee_Std_Logic_Arith_Conv_Vector_Uns = 443
- Ieee_Std_Logic_Arith_Conv_Vector_Sgn = 444
- Ieee_Std_Logic_Arith_Conv_Vector_Log = 445
- Ieee_Std_Logic_Arith_Ext = 446
- Ieee_Std_Logic_Arith_Sxt = 447
- Ieee_Std_Logic_Arith_Mul_Uns_Uns_Uns = 448
- Ieee_Std_Logic_Arith_Mul_Sgn_Sgn_Sgn = 449
- Ieee_Std_Logic_Arith_Mul_Sgn_Uns_Sgn = 450
- Ieee_Std_Logic_Arith_Mul_Uns_Sgn_Sgn = 451
- Ieee_Std_Logic_Arith_Mul_Uns_Uns_Slv = 452
- Ieee_Std_Logic_Arith_Mul_Sgn_Sgn_Slv = 453
- Ieee_Std_Logic_Arith_Mul_Sgn_Uns_Slv = 454
- Ieee_Std_Logic_Arith_Mul_Uns_Sgn_Slv = 455
- Ieee_Std_Logic_Arith_Add_Uns_Uns_Uns = 456
- Ieee_Std_Logic_Arith_Add_Sgn_Sgn_Sgn = 457
- Ieee_Std_Logic_Arith_Add_Uns_Sgn_Sgn = 458
- Ieee_Std_Logic_Arith_Add_Sgn_Uns_Sgn = 459
- Ieee_Std_Logic_Arith_Add_Uns_Int_Uns = 460
- Ieee_Std_Logic_Arith_Add_Int_Uns_Uns = 461
- Ieee_Std_Logic_Arith_Add_Sgn_Int_Sgn = 462
- Ieee_Std_Logic_Arith_Add_Int_Sgn_Sgn = 463
- Ieee_Std_Logic_Arith_Add_Uns_Log_Uns = 464
- Ieee_Std_Logic_Arith_Add_Log_Uns_Uns = 465
- Ieee_Std_Logic_Arith_Add_Sgn_Log_Sgn = 466
- Ieee_Std_Logic_Arith_Add_Log_Sgn_Sgn = 467
- Ieee_Std_Logic_Arith_Add_Uns_Uns_Slv = 468
- Ieee_Std_Logic_Arith_Add_Sgn_Sgn_Slv = 469
- Ieee_Std_Logic_Arith_Add_Uns_Sgn_Slv = 470
- Ieee_Std_Logic_Arith_Add_Sgn_Uns_Slv = 471
- Ieee_Std_Logic_Arith_Add_Uns_Int_Slv = 472
- Ieee_Std_Logic_Arith_Add_Int_Uns_Slv = 473
- Ieee_Std_Logic_Arith_Add_Sgn_Int_Slv = 474
- Ieee_Std_Logic_Arith_Add_Int_Sgn_Slv = 475
- Ieee_Std_Logic_Arith_Add_Uns_Log_Slv = 476
- Ieee_Std_Logic_Arith_Add_Log_Uns_Slv = 477
- Ieee_Std_Logic_Arith_Add_Sgn_Log_Slv = 478
- Ieee_Std_Logic_Arith_Add_Log_Sgn_Slv = 479
- Ieee_Std_Logic_Arith_Sub_Uns_Uns_Uns = 480
- Ieee_Std_Logic_Arith_Sub_Sgn_Sgn_Sgn = 481
- Ieee_Std_Logic_Arith_Sub_Uns_Sgn_Sgn = 482
- Ieee_Std_Logic_Arith_Sub_Sgn_Uns_Sgn = 483
- Ieee_Std_Logic_Arith_Sub_Uns_Int_Uns = 484
- Ieee_Std_Logic_Arith_Sub_Int_Uns_Uns = 485
- Ieee_Std_Logic_Arith_Sub_Sgn_Int_Sgn = 486
- Ieee_Std_Logic_Arith_Sub_Int_Sgn_Sgn = 487
- Ieee_Std_Logic_Arith_Sub_Uns_Log_Uns = 488
- Ieee_Std_Logic_Arith_Sub_Log_Uns_Uns = 489
- Ieee_Std_Logic_Arith_Sub_Sgn_Log_Sgn = 490
- Ieee_Std_Logic_Arith_Sub_Log_Sgn_Sgn = 491
- Ieee_Std_Logic_Arith_Sub_Uns_Uns_Slv = 492
- Ieee_Std_Logic_Arith_Sub_Sgn_Sgn_Slv = 493
- Ieee_Std_Logic_Arith_Sub_Uns_Sgn_Slv = 494
- Ieee_Std_Logic_Arith_Sub_Sgn_Uns_Slv = 495
- Ieee_Std_Logic_Arith_Sub_Uns_Int_Slv = 496
- Ieee_Std_Logic_Arith_Sub_Int_Uns_Slv = 497
- Ieee_Std_Logic_Arith_Sub_Sgn_Int_Slv = 498
- Ieee_Std_Logic_Arith_Sub_Int_Sgn_Slv = 499
- Ieee_Std_Logic_Arith_Sub_Uns_Log_Slv = 500
- Ieee_Std_Logic_Arith_Sub_Log_Uns_Slv = 501
- Ieee_Std_Logic_Arith_Sub_Sgn_Log_Slv = 502
- Ieee_Std_Logic_Arith_Sub_Log_Sgn_Slv = 503
- Ieee_Std_Logic_Arith_Lt_Uns_Uns = 504
- Ieee_Std_Logic_Arith_Lt_Sgn_Sgn = 505
- Ieee_Std_Logic_Arith_Lt_Uns_Sgn = 506
- Ieee_Std_Logic_Arith_Lt_Sgn_Uns = 507
- Ieee_Std_Logic_Arith_Lt_Uns_Int = 508
- Ieee_Std_Logic_Arith_Lt_Int_Uns = 509
- Ieee_Std_Logic_Arith_Lt_Sgn_Int = 510
- Ieee_Std_Logic_Arith_Lt_Int_Sgn = 511
- Ieee_Std_Logic_Arith_Le_Uns_Uns = 512
- Ieee_Std_Logic_Arith_Le_Sgn_Sgn = 513
- Ieee_Std_Logic_Arith_Le_Uns_Sgn = 514
- Ieee_Std_Logic_Arith_Le_Sgn_Uns = 515
- Ieee_Std_Logic_Arith_Le_Uns_Int = 516
- Ieee_Std_Logic_Arith_Le_Int_Uns = 517
- Ieee_Std_Logic_Arith_Le_Sgn_Int = 518
- Ieee_Std_Logic_Arith_Le_Int_Sgn = 519
- Ieee_Std_Logic_Arith_Gt_Uns_Uns = 520
- Ieee_Std_Logic_Arith_Gt_Sgn_Sgn = 521
- Ieee_Std_Logic_Arith_Gt_Uns_Sgn = 522
- Ieee_Std_Logic_Arith_Gt_Sgn_Uns = 523
- Ieee_Std_Logic_Arith_Gt_Uns_Int = 524
- Ieee_Std_Logic_Arith_Gt_Int_Uns = 525
- Ieee_Std_Logic_Arith_Gt_Sgn_Int = 526
- Ieee_Std_Logic_Arith_Gt_Int_Sgn = 527
- Ieee_Std_Logic_Arith_Ge_Uns_Uns = 528
- Ieee_Std_Logic_Arith_Ge_Sgn_Sgn = 529
- Ieee_Std_Logic_Arith_Ge_Uns_Sgn = 530
- Ieee_Std_Logic_Arith_Ge_Sgn_Uns = 531
- Ieee_Std_Logic_Arith_Ge_Uns_Int = 532
- Ieee_Std_Logic_Arith_Ge_Int_Uns = 533
- Ieee_Std_Logic_Arith_Ge_Sgn_Int = 534
- Ieee_Std_Logic_Arith_Ge_Int_Sgn = 535
- Ieee_Std_Logic_Arith_Eq_Uns_Uns = 536
- Ieee_Std_Logic_Arith_Eq_Sgn_Sgn = 537
- Ieee_Std_Logic_Arith_Eq_Uns_Sgn = 538
- Ieee_Std_Logic_Arith_Eq_Sgn_Uns = 539
- Ieee_Std_Logic_Arith_Eq_Uns_Int = 540
- Ieee_Std_Logic_Arith_Eq_Int_Uns = 541
- Ieee_Std_Logic_Arith_Eq_Sgn_Int = 542
- Ieee_Std_Logic_Arith_Eq_Int_Sgn = 543
- Ieee_Std_Logic_Arith_Ne_Uns_Uns = 544
- Ieee_Std_Logic_Arith_Ne_Sgn_Sgn = 545
- Ieee_Std_Logic_Arith_Ne_Uns_Sgn = 546
- Ieee_Std_Logic_Arith_Ne_Sgn_Uns = 547
- Ieee_Std_Logic_Arith_Ne_Uns_Int = 548
- Ieee_Std_Logic_Arith_Ne_Int_Uns = 549
- Ieee_Std_Logic_Arith_Ne_Sgn_Int = 550
- Ieee_Std_Logic_Arith_Ne_Int_Sgn = 551
- Ieee_Std_Logic_Misc_And_Reduce_Slv = 552
- Ieee_Std_Logic_Misc_And_Reduce_Suv = 553
- Ieee_Std_Logic_Misc_Nand_Reduce_Slv = 554
- Ieee_Std_Logic_Misc_Nand_Reduce_Suv = 555
- Ieee_Std_Logic_Misc_Or_Reduce_Slv = 556
- Ieee_Std_Logic_Misc_Or_Reduce_Suv = 557
- Ieee_Std_Logic_Misc_Nor_Reduce_Slv = 558
- Ieee_Std_Logic_Misc_Nor_Reduce_Suv = 559
- Ieee_Std_Logic_Misc_Xor_Reduce_Slv = 560
- Ieee_Std_Logic_Misc_Xor_Reduce_Suv = 561
- Ieee_Std_Logic_Misc_Xnor_Reduce_Slv = 562
- Ieee_Std_Logic_Misc_Xnor_Reduce_Suv = 563
+ Ieee_1164_And_Suv = 202
+ Ieee_1164_Nand_Suv = 203
+ Ieee_1164_Or_Suv = 204
+ Ieee_1164_Nor_Suv = 205
+ Ieee_1164_Xor_Suv = 206
+ Ieee_1164_Xnor_Suv = 207
+ Ieee_1164_Vector_Sll = 208
+ Ieee_1164_Vector_Srl = 209
+ Ieee_1164_Vector_Rol = 210
+ Ieee_1164_Vector_Ror = 211
+ Ieee_1164_Condition_Operator = 212
+ Ieee_Numeric_Std_Toint_Uns_Nat = 213
+ Ieee_Numeric_Std_Toint_Sgn_Int = 214
+ Ieee_Numeric_Std_Touns_Nat_Nat_Uns = 215
+ Ieee_Numeric_Std_Touns_Nat_Uns_Uns = 216
+ Ieee_Numeric_Std_Tosgn_Int_Nat_Sgn = 217
+ Ieee_Numeric_Std_Tosgn_Int_Sgn_Sgn = 218
+ Ieee_Numeric_Std_Resize_Uns_Nat = 219
+ Ieee_Numeric_Std_Resize_Sgn_Nat = 220
+ Ieee_Numeric_Std_Resize_Uns_Uns = 221
+ Ieee_Numeric_Std_Resize_Sgn_Sgn = 222
+ Ieee_Numeric_Std_Add_Uns_Uns = 223
+ Ieee_Numeric_Std_Add_Uns_Nat = 224
+ Ieee_Numeric_Std_Add_Nat_Uns = 225
+ Ieee_Numeric_Std_Add_Uns_Log = 226
+ Ieee_Numeric_Std_Add_Log_Uns = 227
+ Ieee_Numeric_Std_Add_Sgn_Sgn = 228
+ Ieee_Numeric_Std_Add_Sgn_Int = 229
+ Ieee_Numeric_Std_Add_Int_Sgn = 230
+ Ieee_Numeric_Std_Add_Sgn_Log = 231
+ Ieee_Numeric_Std_Add_Log_Sgn = 232
+ Ieee_Numeric_Std_Sub_Uns_Uns = 233
+ Ieee_Numeric_Std_Sub_Uns_Nat = 234
+ Ieee_Numeric_Std_Sub_Nat_Uns = 235
+ Ieee_Numeric_Std_Sub_Uns_Log = 236
+ Ieee_Numeric_Std_Sub_Log_Uns = 237
+ Ieee_Numeric_Std_Sub_Sgn_Sgn = 238
+ Ieee_Numeric_Std_Sub_Sgn_Int = 239
+ Ieee_Numeric_Std_Sub_Int_Sgn = 240
+ Ieee_Numeric_Std_Sub_Sgn_Log = 241
+ Ieee_Numeric_Std_Sub_Log_Sgn = 242
+ Ieee_Numeric_Std_Mul_Uns_Uns = 243
+ Ieee_Numeric_Std_Mul_Uns_Nat = 244
+ Ieee_Numeric_Std_Mul_Nat_Uns = 245
+ Ieee_Numeric_Std_Mul_Sgn_Sgn = 246
+ Ieee_Numeric_Std_Mul_Sgn_Int = 247
+ Ieee_Numeric_Std_Mul_Int_Sgn = 248
+ Ieee_Numeric_Std_Div_Uns_Uns = 249
+ Ieee_Numeric_Std_Div_Uns_Nat = 250
+ Ieee_Numeric_Std_Div_Nat_Uns = 251
+ Ieee_Numeric_Std_Div_Sgn_Sgn = 252
+ Ieee_Numeric_Std_Div_Sgn_Int = 253
+ Ieee_Numeric_Std_Div_Int_Sgn = 254
+ Ieee_Numeric_Std_Rem_Uns_Uns = 255
+ Ieee_Numeric_Std_Rem_Uns_Nat = 256
+ Ieee_Numeric_Std_Rem_Nat_Uns = 257
+ Ieee_Numeric_Std_Rem_Sgn_Sgn = 258
+ Ieee_Numeric_Std_Rem_Sgn_Int = 259
+ Ieee_Numeric_Std_Rem_Int_Sgn = 260
+ Ieee_Numeric_Std_Mod_Uns_Uns = 261
+ Ieee_Numeric_Std_Mod_Uns_Nat = 262
+ Ieee_Numeric_Std_Mod_Nat_Uns = 263
+ Ieee_Numeric_Std_Mod_Sgn_Sgn = 264
+ Ieee_Numeric_Std_Mod_Sgn_Int = 265
+ Ieee_Numeric_Std_Mod_Int_Sgn = 266
+ Ieee_Numeric_Std_Gt_Uns_Uns = 267
+ Ieee_Numeric_Std_Gt_Uns_Nat = 268
+ Ieee_Numeric_Std_Gt_Nat_Uns = 269
+ Ieee_Numeric_Std_Gt_Sgn_Sgn = 270
+ Ieee_Numeric_Std_Gt_Sgn_Int = 271
+ Ieee_Numeric_Std_Gt_Int_Sgn = 272
+ Ieee_Numeric_Std_Lt_Uns_Uns = 273
+ Ieee_Numeric_Std_Lt_Uns_Nat = 274
+ Ieee_Numeric_Std_Lt_Nat_Uns = 275
+ Ieee_Numeric_Std_Lt_Sgn_Sgn = 276
+ Ieee_Numeric_Std_Lt_Sgn_Int = 277
+ Ieee_Numeric_Std_Lt_Int_Sgn = 278
+ Ieee_Numeric_Std_Le_Uns_Uns = 279
+ Ieee_Numeric_Std_Le_Uns_Nat = 280
+ Ieee_Numeric_Std_Le_Nat_Uns = 281
+ Ieee_Numeric_Std_Le_Sgn_Sgn = 282
+ Ieee_Numeric_Std_Le_Sgn_Int = 283
+ Ieee_Numeric_Std_Le_Int_Sgn = 284
+ Ieee_Numeric_Std_Ge_Uns_Uns = 285
+ Ieee_Numeric_Std_Ge_Uns_Nat = 286
+ Ieee_Numeric_Std_Ge_Nat_Uns = 287
+ Ieee_Numeric_Std_Ge_Sgn_Sgn = 288
+ Ieee_Numeric_Std_Ge_Sgn_Int = 289
+ Ieee_Numeric_Std_Ge_Int_Sgn = 290
+ Ieee_Numeric_Std_Eq_Uns_Uns = 291
+ Ieee_Numeric_Std_Eq_Uns_Nat = 292
+ Ieee_Numeric_Std_Eq_Nat_Uns = 293
+ Ieee_Numeric_Std_Eq_Sgn_Sgn = 294
+ Ieee_Numeric_Std_Eq_Sgn_Int = 295
+ Ieee_Numeric_Std_Eq_Int_Sgn = 296
+ Ieee_Numeric_Std_Ne_Uns_Uns = 297
+ Ieee_Numeric_Std_Ne_Uns_Nat = 298
+ Ieee_Numeric_Std_Ne_Nat_Uns = 299
+ Ieee_Numeric_Std_Ne_Sgn_Sgn = 300
+ Ieee_Numeric_Std_Ne_Sgn_Int = 301
+ Ieee_Numeric_Std_Ne_Int_Sgn = 302
+ Ieee_Numeric_Std_Match_Gt_Uns_Uns = 303
+ Ieee_Numeric_Std_Match_Gt_Uns_Nat = 304
+ Ieee_Numeric_Std_Match_Gt_Nat_Uns = 305
+ Ieee_Numeric_Std_Match_Gt_Sgn_Sgn = 306
+ Ieee_Numeric_Std_Match_Gt_Sgn_Int = 307
+ Ieee_Numeric_Std_Match_Gt_Int_Sgn = 308
+ Ieee_Numeric_Std_Match_Lt_Uns_Uns = 309
+ Ieee_Numeric_Std_Match_Lt_Uns_Nat = 310
+ Ieee_Numeric_Std_Match_Lt_Nat_Uns = 311
+ Ieee_Numeric_Std_Match_Lt_Sgn_Sgn = 312
+ Ieee_Numeric_Std_Match_Lt_Sgn_Int = 313
+ Ieee_Numeric_Std_Match_Lt_Int_Sgn = 314
+ Ieee_Numeric_Std_Match_Le_Uns_Uns = 315
+ Ieee_Numeric_Std_Match_Le_Uns_Nat = 316
+ Ieee_Numeric_Std_Match_Le_Nat_Uns = 317
+ Ieee_Numeric_Std_Match_Le_Sgn_Sgn = 318
+ Ieee_Numeric_Std_Match_Le_Sgn_Int = 319
+ Ieee_Numeric_Std_Match_Le_Int_Sgn = 320
+ Ieee_Numeric_Std_Match_Ge_Uns_Uns = 321
+ Ieee_Numeric_Std_Match_Ge_Uns_Nat = 322
+ Ieee_Numeric_Std_Match_Ge_Nat_Uns = 323
+ Ieee_Numeric_Std_Match_Ge_Sgn_Sgn = 324
+ Ieee_Numeric_Std_Match_Ge_Sgn_Int = 325
+ Ieee_Numeric_Std_Match_Ge_Int_Sgn = 326
+ Ieee_Numeric_Std_Match_Eq_Uns_Uns = 327
+ Ieee_Numeric_Std_Match_Eq_Uns_Nat = 328
+ Ieee_Numeric_Std_Match_Eq_Nat_Uns = 329
+ Ieee_Numeric_Std_Match_Eq_Sgn_Sgn = 330
+ Ieee_Numeric_Std_Match_Eq_Sgn_Int = 331
+ Ieee_Numeric_Std_Match_Eq_Int_Sgn = 332
+ Ieee_Numeric_Std_Match_Ne_Uns_Uns = 333
+ Ieee_Numeric_Std_Match_Ne_Uns_Nat = 334
+ Ieee_Numeric_Std_Match_Ne_Nat_Uns = 335
+ Ieee_Numeric_Std_Match_Ne_Sgn_Sgn = 336
+ Ieee_Numeric_Std_Match_Ne_Sgn_Int = 337
+ Ieee_Numeric_Std_Match_Ne_Int_Sgn = 338
+ Ieee_Numeric_Std_Sll_Uns_Int = 339
+ Ieee_Numeric_Std_Sll_Sgn_Int = 340
+ Ieee_Numeric_Std_Srl_Uns_Int = 341
+ Ieee_Numeric_Std_Srl_Sgn_Int = 342
+ Ieee_Numeric_Std_Sla_Uns_Int = 343
+ Ieee_Numeric_Std_Sla_Sgn_Int = 344
+ Ieee_Numeric_Std_Sra_Uns_Int = 345
+ Ieee_Numeric_Std_Sra_Sgn_Int = 346
+ Ieee_Numeric_Std_And_Uns_Uns = 347
+ Ieee_Numeric_Std_And_Sgn_Sgn = 348
+ Ieee_Numeric_Std_Or_Uns_Uns = 349
+ Ieee_Numeric_Std_Or_Sgn_Sgn = 350
+ Ieee_Numeric_Std_Nand_Uns_Uns = 351
+ Ieee_Numeric_Std_Nand_Sgn_Sgn = 352
+ Ieee_Numeric_Std_Nor_Uns_Uns = 353
+ Ieee_Numeric_Std_Nor_Sgn_Sgn = 354
+ Ieee_Numeric_Std_Xor_Uns_Uns = 355
+ Ieee_Numeric_Std_Xor_Sgn_Sgn = 356
+ Ieee_Numeric_Std_Xnor_Uns_Uns = 357
+ Ieee_Numeric_Std_Xnor_Sgn_Sgn = 358
+ Ieee_Numeric_Std_Not_Uns = 359
+ Ieee_Numeric_Std_Not_Sgn = 360
+ Ieee_Numeric_Std_Abs_Sgn = 361
+ Ieee_Numeric_Std_Neg_Uns = 362
+ Ieee_Numeric_Std_Neg_Sgn = 363
+ Ieee_Numeric_Std_Min_Uns_Uns = 364
+ Ieee_Numeric_Std_Min_Uns_Nat = 365
+ Ieee_Numeric_Std_Min_Nat_Uns = 366
+ Ieee_Numeric_Std_Min_Sgn_Sgn = 367
+ Ieee_Numeric_Std_Min_Sgn_Int = 368
+ Ieee_Numeric_Std_Min_Int_Sgn = 369
+ Ieee_Numeric_Std_Max_Uns_Uns = 370
+ Ieee_Numeric_Std_Max_Uns_Nat = 371
+ Ieee_Numeric_Std_Max_Nat_Uns = 372
+ Ieee_Numeric_Std_Max_Sgn_Sgn = 373
+ Ieee_Numeric_Std_Max_Sgn_Int = 374
+ Ieee_Numeric_Std_Max_Int_Sgn = 375
+ Ieee_Numeric_Std_Shf_Left_Uns_Nat = 376
+ Ieee_Numeric_Std_Shf_Right_Uns_Nat = 377
+ Ieee_Numeric_Std_Shf_Left_Sgn_Nat = 378
+ Ieee_Numeric_Std_Shf_Right_Sgn_Nat = 379
+ Ieee_Numeric_Std_Rot_Left_Uns_Nat = 380
+ Ieee_Numeric_Std_Rot_Right_Uns_Nat = 381
+ Ieee_Numeric_Std_Rot_Left_Sgn_Nat = 382
+ Ieee_Numeric_Std_Rot_Right_Sgn_Nat = 383
+ Ieee_Numeric_Std_Match_Log = 384
+ Ieee_Numeric_Std_Match_Uns = 385
+ Ieee_Numeric_Std_Match_Sgn = 386
+ Ieee_Numeric_Std_Match_Slv = 387
+ Ieee_Numeric_Std_Match_Suv = 388
+ Ieee_Numeric_Std_To_01_Uns = 389
+ Ieee_Numeric_Std_To_01_Sgn = 390
+ Ieee_Math_Real_Ceil = 391
+ Ieee_Math_Real_Floor = 392
+ Ieee_Math_Real_Round = 393
+ Ieee_Math_Real_Log2 = 394
+ Ieee_Math_Real_Sin = 395
+ Ieee_Math_Real_Cos = 396
+ Ieee_Std_Logic_Unsigned_Add_Slv_Slv = 397
+ Ieee_Std_Logic_Unsigned_Add_Slv_Int = 398
+ Ieee_Std_Logic_Unsigned_Add_Int_Slv = 399
+ Ieee_Std_Logic_Unsigned_Add_Slv_Log = 400
+ Ieee_Std_Logic_Unsigned_Add_Log_Slv = 401
+ Ieee_Std_Logic_Unsigned_Sub_Slv_Slv = 402
+ Ieee_Std_Logic_Unsigned_Sub_Slv_Int = 403
+ Ieee_Std_Logic_Unsigned_Sub_Int_Slv = 404
+ Ieee_Std_Logic_Unsigned_Sub_Slv_Log = 405
+ Ieee_Std_Logic_Unsigned_Sub_Log_Slv = 406
+ Ieee_Std_Logic_Unsigned_Mul_Slv_Slv = 407
+ Ieee_Std_Logic_Unsigned_Lt_Slv_Slv = 408
+ Ieee_Std_Logic_Unsigned_Lt_Slv_Int = 409
+ Ieee_Std_Logic_Unsigned_Lt_Int_Slv = 410
+ Ieee_Std_Logic_Unsigned_Le_Slv_Slv = 411
+ Ieee_Std_Logic_Unsigned_Le_Slv_Int = 412
+ Ieee_Std_Logic_Unsigned_Le_Int_Slv = 413
+ Ieee_Std_Logic_Unsigned_Gt_Slv_Slv = 414
+ Ieee_Std_Logic_Unsigned_Gt_Slv_Int = 415
+ Ieee_Std_Logic_Unsigned_Gt_Int_Slv = 416
+ Ieee_Std_Logic_Unsigned_Ge_Slv_Slv = 417
+ Ieee_Std_Logic_Unsigned_Ge_Slv_Int = 418
+ Ieee_Std_Logic_Unsigned_Ge_Int_Slv = 419
+ Ieee_Std_Logic_Unsigned_Eq_Slv_Slv = 420
+ Ieee_Std_Logic_Unsigned_Eq_Slv_Int = 421
+ Ieee_Std_Logic_Unsigned_Eq_Int_Slv = 422
+ Ieee_Std_Logic_Unsigned_Ne_Slv_Slv = 423
+ Ieee_Std_Logic_Unsigned_Ne_Slv_Int = 424
+ Ieee_Std_Logic_Unsigned_Ne_Int_Slv = 425
+ Ieee_Std_Logic_Unsigned_Conv_Integer = 426
+ Ieee_Std_Logic_Signed_Add_Slv_Slv = 427
+ Ieee_Std_Logic_Signed_Add_Slv_Int = 428
+ Ieee_Std_Logic_Signed_Add_Int_Slv = 429
+ Ieee_Std_Logic_Signed_Add_Slv_Log = 430
+ Ieee_Std_Logic_Signed_Add_Log_Slv = 431
+ Ieee_Std_Logic_Signed_Sub_Slv_Slv = 432
+ Ieee_Std_Logic_Signed_Sub_Slv_Int = 433
+ Ieee_Std_Logic_Signed_Sub_Int_Slv = 434
+ Ieee_Std_Logic_Signed_Sub_Slv_Log = 435
+ Ieee_Std_Logic_Signed_Sub_Log_Slv = 436
+ Ieee_Std_Logic_Signed_Mul_Slv_Slv = 437
+ Ieee_Std_Logic_Arith_Conv_Unsigned_Int = 438
+ Ieee_Std_Logic_Arith_Conv_Unsigned_Uns = 439
+ Ieee_Std_Logic_Arith_Conv_Unsigned_Sgn = 440
+ Ieee_Std_Logic_Arith_Conv_Unsigned_Log = 441
+ Ieee_Std_Logic_Arith_Conv_Integer_Int = 442
+ Ieee_Std_Logic_Arith_Conv_Integer_Uns = 443
+ Ieee_Std_Logic_Arith_Conv_Integer_Sgn = 444
+ Ieee_Std_Logic_Arith_Conv_Integer_Log = 445
+ Ieee_Std_Logic_Arith_Conv_Vector_Int = 446
+ Ieee_Std_Logic_Arith_Conv_Vector_Uns = 447
+ Ieee_Std_Logic_Arith_Conv_Vector_Sgn = 448
+ Ieee_Std_Logic_Arith_Conv_Vector_Log = 449
+ Ieee_Std_Logic_Arith_Ext = 450
+ Ieee_Std_Logic_Arith_Sxt = 451
+ Ieee_Std_Logic_Arith_Mul_Uns_Uns_Uns = 452
+ Ieee_Std_Logic_Arith_Mul_Sgn_Sgn_Sgn = 453
+ Ieee_Std_Logic_Arith_Mul_Sgn_Uns_Sgn = 454
+ Ieee_Std_Logic_Arith_Mul_Uns_Sgn_Sgn = 455
+ Ieee_Std_Logic_Arith_Mul_Uns_Uns_Slv = 456
+ Ieee_Std_Logic_Arith_Mul_Sgn_Sgn_Slv = 457
+ Ieee_Std_Logic_Arith_Mul_Sgn_Uns_Slv = 458
+ Ieee_Std_Logic_Arith_Mul_Uns_Sgn_Slv = 459
+ Ieee_Std_Logic_Arith_Add_Uns_Uns_Uns = 460
+ Ieee_Std_Logic_Arith_Add_Sgn_Sgn_Sgn = 461
+ Ieee_Std_Logic_Arith_Add_Uns_Sgn_Sgn = 462
+ Ieee_Std_Logic_Arith_Add_Sgn_Uns_Sgn = 463
+ Ieee_Std_Logic_Arith_Add_Uns_Int_Uns = 464
+ Ieee_Std_Logic_Arith_Add_Int_Uns_Uns = 465
+ Ieee_Std_Logic_Arith_Add_Sgn_Int_Sgn = 466
+ Ieee_Std_Logic_Arith_Add_Int_Sgn_Sgn = 467
+ Ieee_Std_Logic_Arith_Add_Uns_Log_Uns = 468
+ Ieee_Std_Logic_Arith_Add_Log_Uns_Uns = 469
+ Ieee_Std_Logic_Arith_Add_Sgn_Log_Sgn = 470
+ Ieee_Std_Logic_Arith_Add_Log_Sgn_Sgn = 471
+ Ieee_Std_Logic_Arith_Add_Uns_Uns_Slv = 472
+ Ieee_Std_Logic_Arith_Add_Sgn_Sgn_Slv = 473
+ Ieee_Std_Logic_Arith_Add_Uns_Sgn_Slv = 474
+ Ieee_Std_Logic_Arith_Add_Sgn_Uns_Slv = 475
+ Ieee_Std_Logic_Arith_Add_Uns_Int_Slv = 476
+ Ieee_Std_Logic_Arith_Add_Int_Uns_Slv = 477
+ Ieee_Std_Logic_Arith_Add_Sgn_Int_Slv = 478
+ Ieee_Std_Logic_Arith_Add_Int_Sgn_Slv = 479
+ Ieee_Std_Logic_Arith_Add_Uns_Log_Slv = 480
+ Ieee_Std_Logic_Arith_Add_Log_Uns_Slv = 481
+ Ieee_Std_Logic_Arith_Add_Sgn_Log_Slv = 482
+ Ieee_Std_Logic_Arith_Add_Log_Sgn_Slv = 483
+ Ieee_Std_Logic_Arith_Sub_Uns_Uns_Uns = 484
+ Ieee_Std_Logic_Arith_Sub_Sgn_Sgn_Sgn = 485
+ Ieee_Std_Logic_Arith_Sub_Uns_Sgn_Sgn = 486
+ Ieee_Std_Logic_Arith_Sub_Sgn_Uns_Sgn = 487
+ Ieee_Std_Logic_Arith_Sub_Uns_Int_Uns = 488
+ Ieee_Std_Logic_Arith_Sub_Int_Uns_Uns = 489
+ Ieee_Std_Logic_Arith_Sub_Sgn_Int_Sgn = 490
+ Ieee_Std_Logic_Arith_Sub_Int_Sgn_Sgn = 491
+ Ieee_Std_Logic_Arith_Sub_Uns_Log_Uns = 492
+ Ieee_Std_Logic_Arith_Sub_Log_Uns_Uns = 493
+ Ieee_Std_Logic_Arith_Sub_Sgn_Log_Sgn = 494
+ Ieee_Std_Logic_Arith_Sub_Log_Sgn_Sgn = 495
+ Ieee_Std_Logic_Arith_Sub_Uns_Uns_Slv = 496
+ Ieee_Std_Logic_Arith_Sub_Sgn_Sgn_Slv = 497
+ Ieee_Std_Logic_Arith_Sub_Uns_Sgn_Slv = 498
+ Ieee_Std_Logic_Arith_Sub_Sgn_Uns_Slv = 499
+ Ieee_Std_Logic_Arith_Sub_Uns_Int_Slv = 500
+ Ieee_Std_Logic_Arith_Sub_Int_Uns_Slv = 501
+ Ieee_Std_Logic_Arith_Sub_Sgn_Int_Slv = 502
+ Ieee_Std_Logic_Arith_Sub_Int_Sgn_Slv = 503
+ Ieee_Std_Logic_Arith_Sub_Uns_Log_Slv = 504
+ Ieee_Std_Logic_Arith_Sub_Log_Uns_Slv = 505
+ Ieee_Std_Logic_Arith_Sub_Sgn_Log_Slv = 506
+ Ieee_Std_Logic_Arith_Sub_Log_Sgn_Slv = 507
+ Ieee_Std_Logic_Arith_Lt_Uns_Uns = 508
+ Ieee_Std_Logic_Arith_Lt_Sgn_Sgn = 509
+ Ieee_Std_Logic_Arith_Lt_Uns_Sgn = 510
+ Ieee_Std_Logic_Arith_Lt_Sgn_Uns = 511
+ Ieee_Std_Logic_Arith_Lt_Uns_Int = 512
+ Ieee_Std_Logic_Arith_Lt_Int_Uns = 513
+ Ieee_Std_Logic_Arith_Lt_Sgn_Int = 514
+ Ieee_Std_Logic_Arith_Lt_Int_Sgn = 515
+ Ieee_Std_Logic_Arith_Le_Uns_Uns = 516
+ Ieee_Std_Logic_Arith_Le_Sgn_Sgn = 517
+ Ieee_Std_Logic_Arith_Le_Uns_Sgn = 518
+ Ieee_Std_Logic_Arith_Le_Sgn_Uns = 519
+ Ieee_Std_Logic_Arith_Le_Uns_Int = 520
+ Ieee_Std_Logic_Arith_Le_Int_Uns = 521
+ Ieee_Std_Logic_Arith_Le_Sgn_Int = 522
+ Ieee_Std_Logic_Arith_Le_Int_Sgn = 523
+ Ieee_Std_Logic_Arith_Gt_Uns_Uns = 524
+ Ieee_Std_Logic_Arith_Gt_Sgn_Sgn = 525
+ Ieee_Std_Logic_Arith_Gt_Uns_Sgn = 526
+ Ieee_Std_Logic_Arith_Gt_Sgn_Uns = 527
+ Ieee_Std_Logic_Arith_Gt_Uns_Int = 528
+ Ieee_Std_Logic_Arith_Gt_Int_Uns = 529
+ Ieee_Std_Logic_Arith_Gt_Sgn_Int = 530
+ Ieee_Std_Logic_Arith_Gt_Int_Sgn = 531
+ Ieee_Std_Logic_Arith_Ge_Uns_Uns = 532
+ Ieee_Std_Logic_Arith_Ge_Sgn_Sgn = 533
+ Ieee_Std_Logic_Arith_Ge_Uns_Sgn = 534
+ Ieee_Std_Logic_Arith_Ge_Sgn_Uns = 535
+ Ieee_Std_Logic_Arith_Ge_Uns_Int = 536
+ Ieee_Std_Logic_Arith_Ge_Int_Uns = 537
+ Ieee_Std_Logic_Arith_Ge_Sgn_Int = 538
+ Ieee_Std_Logic_Arith_Ge_Int_Sgn = 539
+ Ieee_Std_Logic_Arith_Eq_Uns_Uns = 540
+ Ieee_Std_Logic_Arith_Eq_Sgn_Sgn = 541
+ Ieee_Std_Logic_Arith_Eq_Uns_Sgn = 542
+ Ieee_Std_Logic_Arith_Eq_Sgn_Uns = 543
+ Ieee_Std_Logic_Arith_Eq_Uns_Int = 544
+ Ieee_Std_Logic_Arith_Eq_Int_Uns = 545
+ Ieee_Std_Logic_Arith_Eq_Sgn_Int = 546
+ Ieee_Std_Logic_Arith_Eq_Int_Sgn = 547
+ Ieee_Std_Logic_Arith_Ne_Uns_Uns = 548
+ Ieee_Std_Logic_Arith_Ne_Sgn_Sgn = 549
+ Ieee_Std_Logic_Arith_Ne_Uns_Sgn = 550
+ Ieee_Std_Logic_Arith_Ne_Sgn_Uns = 551
+ Ieee_Std_Logic_Arith_Ne_Uns_Int = 552
+ Ieee_Std_Logic_Arith_Ne_Int_Uns = 553
+ Ieee_Std_Logic_Arith_Ne_Sgn_Int = 554
+ Ieee_Std_Logic_Arith_Ne_Int_Sgn = 555
+ Ieee_Std_Logic_Misc_And_Reduce_Slv = 556
+ Ieee_Std_Logic_Misc_And_Reduce_Suv = 557
+ Ieee_Std_Logic_Misc_Nand_Reduce_Slv = 558
+ Ieee_Std_Logic_Misc_Nand_Reduce_Suv = 559
+ Ieee_Std_Logic_Misc_Or_Reduce_Slv = 560
+ Ieee_Std_Logic_Misc_Or_Reduce_Suv = 561
+ Ieee_Std_Logic_Misc_Nor_Reduce_Slv = 562
+ Ieee_Std_Logic_Misc_Nor_Reduce_Suv = 563
+ Ieee_Std_Logic_Misc_Xor_Reduce_Slv = 564
+ Ieee_Std_Logic_Misc_Xor_Reduce_Suv = 565
+ Ieee_Std_Logic_Misc_Xnor_Reduce_Slv = 566
+ Ieee_Std_Logic_Misc_Xnor_Reduce_Suv = 567
Get_Kind = libghdl.vhdl__nodes__get_kind
Get_Location = libghdl.vhdl__nodes__get_location
diff --git a/src/synth/ghdlsynth_gates.h b/src/synth/ghdlsynth_gates.h
index 951b9dc2b..78e4a6ef9 100644
--- a/src/synth/ghdlsynth_gates.h
+++ b/src/synth/ghdlsynth_gates.h
@@ -46,13 +46,14 @@ enum Module_Id {
Id_Sgt = 39,
Id_Red_And = 40,
Id_Red_Or = 41,
- Id_Concat2 = 42,
- Id_Concat3 = 43,
- Id_Concat4 = 44,
- Id_Concatn = 45,
- Id_Mux2 = 46,
- Id_Mux4 = 47,
- Id_Pmux = 48,
+ Id_Red_Xor = 42,
+ Id_Concat2 = 43,
+ Id_Concat3 = 44,
+ Id_Concat4 = 45,
+ Id_Concatn = 46,
+ Id_Mux2 = 47,
+ Id_Mux4 = 48,
+ Id_Pmux = 49,
Id_Signal = 52,
Id_Isignal = 53,
Id_Output = 54,
diff --git a/src/synth/netlists-builders.adb b/src/synth/netlists-builders.adb
index 626debfa7..7e8f7b3f7 100644
--- a/src/synth/netlists-builders.adb
+++ b/src/synth/netlists-builders.adb
@@ -748,6 +748,8 @@ package body Netlists.Builders is
Get_Identifier ("red_or"), Id_Red_Or);
Create_Monadic_Module (Design, Res.M_Reduce (Id_Red_And),
Get_Identifier ("red_and"), Id_Red_And);
+ Create_Monadic_Module (Design, Res.M_Reduce (Id_Red_Xor),
+ Get_Identifier ("red_xor"), Id_Red_Xor);
Create_Edge_Module (Res);
diff --git a/src/synth/netlists-disp_vhdl.adb b/src/synth/netlists-disp_vhdl.adb
index ef1ebe3ff..513dadbbb 100644
--- a/src/synth/netlists-disp_vhdl.adb
+++ b/src/synth/netlists-disp_vhdl.adb
@@ -1296,6 +1296,22 @@ package body Netlists.Disp_Vhdl is
(" \o0 <= \i0; -- reduce and" & NL, Inst);
end if;
end;
+ when Id_Red_Xor =>
+ declare
+ Iw : constant Width := Get_Width (Get_Input_Net (Inst, 0));
+ begin
+ if Iw > 1 then
+ Disp_Template (" \o0 <= \i0(0)", Inst);
+ for I in 1 .. Iw - 1 loop
+ Disp_Template (" xor \i0(\n0)", Inst, (0 => I));
+ end loop;
+ Disp_Template (";" & NL, Inst);
+ else
+ Disp_Template
+ (" \o0 <= \i0; -- reduce xor" & NL, Inst);
+ end if;
+ end;
+
when Id_Posedge =>
Disp_Template
(" \o0 <= '1' when rising_edge (\i0) else '0';" & NL, Inst);
diff --git a/src/synth/netlists-gates.ads b/src/synth/netlists-gates.ads
index bef8c3245..8fe40d83d 100644
--- a/src/synth/netlists-gates.ads
+++ b/src/synth/netlists-gates.ads
@@ -85,30 +85,31 @@ package Netlists.Gates is
Id_Red_And : constant Module_Id := 40;
Id_Red_Or : constant Module_Id := 41;
+ Id_Red_Xor : constant Module_Id := 42;
- subtype Reduce_Module_Id is Module_Id range Id_Red_And .. Id_Red_Or;
+ subtype Reduce_Module_Id is Module_Id range Id_Red_And .. Id_Red_Xor;
- Id_Concat2 : constant Module_Id := 42;
- Id_Concat3 : constant Module_Id := 43;
- Id_Concat4 : constant Module_Id := 44;
+ Id_Concat2 : constant Module_Id := 43;
+ Id_Concat3 : constant Module_Id := 44;
+ Id_Concat4 : constant Module_Id := 45;
subtype Concat_Module_Id is Module_Id range Id_Concat2 .. Id_Concat4;
-- Concatenation with N inputs.
- Id_Concatn : constant Module_Id := 45;
+ Id_Concatn : constant Module_Id := 46;
-- Inputs: s, i0, i1
-- Output: o
- Id_Mux2 : constant Module_Id := 46;
+ Id_Mux2 : constant Module_Id := 47;
-- Inputs: s, i0, i1, s2, s3
-- Output: o
- Id_Mux4 : constant Module_Id := 47;
+ Id_Mux4 : constant Module_Id := 48;
-- Inputs: 0: Selector as one-hot encoding
-- 1: Default value (when the selector is 0)
-- 2..1+W: values (2: MSB of sel, 1+W: LSB of sel)
-- Output: 0: selected value
- Id_Pmux : constant Module_Id := 48;
+ Id_Pmux : constant Module_Id := 49;
subtype Mux_Module_Id is Module_Id range Id_Mux2 .. Id_Mux4;
diff --git a/src/synth/synth-oper.adb b/src/synth/synth-oper.adb
index a63a0a571..3059298f3 100644
--- a/src/synth/synth-oper.adb
+++ b/src/synth/synth-oper.adb
@@ -1430,13 +1430,18 @@ package body Synth.Oper is
return Create_Value_Net (N, Create_Res_Bound (Operand));
end Synth_Vec_Monadic;
- function Synth_Vec_Reduce_Monadic (Id : Reduce_Module_Id) return Valtyp
+ function Synth_Vec_Reduce_Monadic
+ (Id : Reduce_Module_Id; Neg : Boolean := False) return Valtyp
is
Op: constant Net := Get_Net (Ctxt, Operand);
N : Net;
begin
N := Build_Reduce (Ctxt, Id, Op);
Set_Location (N, Loc);
+ if Neg then
+ N := Build_Monadic (Ctxt, Id_Not, N);
+ Set_Location (N, Loc);
+ end if;
return Create_Value_Net (N, Operand.Typ.Vec_El);
end Synth_Vec_Reduce_Monadic;
begin
@@ -1471,10 +1476,20 @@ package body Synth.Oper is
return Synth_Vec_Monadic (Id_Neg);
when Iir_Predefined_Ieee_Numeric_Std_Abs_Sgn =>
return Synth_Vec_Monadic (Id_Abs);
- when Iir_Predefined_Ieee_1164_Vector_And_Reduce =>
- return Synth_Vec_Reduce_Monadic(Id_Red_And);
- when Iir_Predefined_Ieee_1164_Vector_Or_Reduce =>
- return Synth_Vec_Reduce_Monadic(Id_Red_Or);
+
+ when Iir_Predefined_Ieee_1164_And_Suv =>
+ return Synth_Vec_Reduce_Monadic (Id_Red_And);
+ when Iir_Predefined_Ieee_1164_Nand_Suv =>
+ return Synth_Vec_Reduce_Monadic (Id_Red_And, True);
+ when Iir_Predefined_Ieee_1164_Or_Suv =>
+ return Synth_Vec_Reduce_Monadic (Id_Red_Or);
+ when Iir_Predefined_Ieee_1164_Nor_Suv =>
+ return Synth_Vec_Reduce_Monadic (Id_Red_Or, True);
+ when Iir_Predefined_Ieee_1164_Xor_Suv =>
+ return Synth_Vec_Reduce_Monadic (Id_Red_Xor);
+ when Iir_Predefined_Ieee_1164_Xnor_Suv =>
+ return Synth_Vec_Reduce_Monadic (Id_Red_Xor, True);
+
when Iir_Predefined_Ieee_1164_Condition_Operator =>
return Create_Value_Net
(Get_Net (Ctxt, Operand),
diff --git a/src/synth/synth-static_oper.adb b/src/synth/synth-static_oper.adb
index ade651703..8b72dc3e7 100644
--- a/src/synth/synth-static_oper.adb
+++ b/src/synth/synth-static_oper.adb
@@ -697,7 +697,7 @@ package body Synth.Static_Oper is
(Std_Ulogic'Pos (Not_Table (Read_Std_Logic (Operand.Mem, 0))),
Oper_Typ);
- when Iir_Predefined_Ieee_1164_Vector_Or_Reduce =>
+ when Iir_Predefined_Ieee_1164_Or_Suv =>
return Synth_Vector_Reduce ('0', Operand, Or_Table);
when others =>
diff --git a/src/vhdl/vhdl-ieee-std_logic_1164.adb b/src/vhdl/vhdl-ieee-std_logic_1164.adb
index 58fe96229..bb4b12bce 100644
--- a/src/vhdl/vhdl-ieee-std_logic_1164.adb
+++ b/src/vhdl/vhdl-ieee-std_logic_1164.adb
@@ -375,11 +375,17 @@ package body Vhdl.Ieee.Std_Logic_1164 is
when Name_Not =>
Predefined := Iir_Predefined_Ieee_1164_Vector_Not;
when Name_And =>
- Predefined :=
- Iir_Predefined_Ieee_1164_Vector_And_Reduce;
+ Predefined := Iir_Predefined_Ieee_1164_And_Suv;
+ when Name_Nand =>
+ Predefined := Iir_Predefined_Ieee_1164_Nand_Suv;
when Name_Or =>
- Predefined :=
- Iir_Predefined_Ieee_1164_Vector_Or_Reduce;
+ Predefined := Iir_Predefined_Ieee_1164_Or_Suv;
+ when Name_Nor =>
+ Predefined := Iir_Predefined_Ieee_1164_Nor_Suv;
+ when Name_Xor =>
+ Predefined := Iir_Predefined_Ieee_1164_Xor_Suv;
+ when Name_Xnor =>
+ Predefined := Iir_Predefined_Ieee_1164_Xnor_Suv;
when Name_Is_X =>
Predefined :=
Iir_Predefined_Ieee_1164_Scalar_Is_X;
diff --git a/src/vhdl/vhdl-nodes.ads b/src/vhdl/vhdl-nodes.ads
index 2460e7bfc..8f3c003fa 100644
--- a/src/vhdl/vhdl-nodes.ads
+++ b/src/vhdl/vhdl-nodes.ads
@@ -5471,8 +5471,12 @@ package Vhdl.Nodes is
Iir_Predefined_Ieee_1164_Falling_Edge,
-- VHDL-2008 unary logic operators
- Iir_Predefined_Ieee_1164_Vector_And_Reduce,
- Iir_Predefined_Ieee_1164_Vector_Or_Reduce,
+ Iir_Predefined_Ieee_1164_And_Suv,
+ Iir_Predefined_Ieee_1164_Nand_Suv,
+ Iir_Predefined_Ieee_1164_Or_Suv,
+ Iir_Predefined_Ieee_1164_Nor_Suv,
+ Iir_Predefined_Ieee_1164_Xor_Suv,
+ Iir_Predefined_Ieee_1164_Xnor_Suv,
Iir_Predefined_Ieee_1164_Vector_Sll,
Iir_Predefined_Ieee_1164_Vector_Srl,