diff options
| -rw-r--r-- | pyGHDL/libghdl/vhdl/nodes.py | 939 | ||||
| -rw-r--r-- | src/vhdl/vhdl-ieee-numeric.adb | 18 | ||||
| -rw-r--r-- | src/vhdl/vhdl-ieee-numeric_std_unsigned.adb | 53 | ||||
| -rw-r--r-- | src/vhdl/vhdl-ieee-std_logic_1164.adb | 7 | ||||
| -rw-r--r-- | src/vhdl/vhdl-nodes.ads | 41 | 
5 files changed, 593 insertions, 465 deletions
diff --git a/pyGHDL/libghdl/vhdl/nodes.py b/pyGHDL/libghdl/vhdl/nodes.py index 762bbc89a..eedc50137 100644 --- a/pyGHDL/libghdl/vhdl/nodes.py +++ b/pyGHDL/libghdl/vhdl/nodes.py @@ -1444,464 +1444,487 @@ class Iir_Predefined(IntEnum):      Ieee_1164_Vector_Rol = 247      Ieee_1164_Vector_Ror = 248      Ieee_1164_Condition_Operator = 249 -    Ieee_1164_To_Hstring = 250 -    Ieee_1164_To_Ostring = 251 -    Ieee_Numeric_Std_Toint_Uns_Nat = 252 -    Ieee_Numeric_Std_Toint_Sgn_Int = 253 -    Ieee_Numeric_Std_Touns_Nat_Nat_Uns = 254 -    Ieee_Numeric_Std_Touns_Nat_Uns_Uns = 255 -    Ieee_Numeric_Std_Tosgn_Int_Nat_Sgn = 256 -    Ieee_Numeric_Std_Tosgn_Int_Sgn_Sgn = 257 -    Ieee_Numeric_Std_Resize_Uns_Nat = 258 -    Ieee_Numeric_Std_Resize_Sgn_Nat = 259 -    Ieee_Numeric_Std_Resize_Uns_Uns = 260 -    Ieee_Numeric_Std_Resize_Sgn_Sgn = 261 -    Ieee_Numeric_Std_Add_Uns_Uns = 262 -    Ieee_Numeric_Std_Add_Uns_Nat = 263 -    Ieee_Numeric_Std_Add_Nat_Uns = 264 -    Ieee_Numeric_Std_Add_Uns_Log = 265 -    Ieee_Numeric_Std_Add_Log_Uns = 266 -    Ieee_Numeric_Std_Add_Sgn_Sgn = 267 -    Ieee_Numeric_Std_Add_Sgn_Int = 268 -    Ieee_Numeric_Std_Add_Int_Sgn = 269 -    Ieee_Numeric_Std_Add_Sgn_Log = 270 -    Ieee_Numeric_Std_Add_Log_Sgn = 271 -    Ieee_Numeric_Std_Sub_Uns_Uns = 272 -    Ieee_Numeric_Std_Sub_Uns_Nat = 273 -    Ieee_Numeric_Std_Sub_Nat_Uns = 274 -    Ieee_Numeric_Std_Sub_Uns_Log = 275 -    Ieee_Numeric_Std_Sub_Log_Uns = 276 -    Ieee_Numeric_Std_Sub_Sgn_Sgn = 277 -    Ieee_Numeric_Std_Sub_Sgn_Int = 278 -    Ieee_Numeric_Std_Sub_Int_Sgn = 279 -    Ieee_Numeric_Std_Sub_Sgn_Log = 280 -    Ieee_Numeric_Std_Sub_Log_Sgn = 281 -    Ieee_Numeric_Std_Mul_Uns_Uns = 282 -    Ieee_Numeric_Std_Mul_Uns_Nat = 283 -    Ieee_Numeric_Std_Mul_Nat_Uns = 284 -    Ieee_Numeric_Std_Mul_Sgn_Sgn = 285 -    Ieee_Numeric_Std_Mul_Sgn_Int = 286 -    Ieee_Numeric_Std_Mul_Int_Sgn = 287 -    Ieee_Numeric_Std_Div_Uns_Uns = 288 -    Ieee_Numeric_Std_Div_Uns_Nat = 289 -    Ieee_Numeric_Std_Div_Nat_Uns = 290 -    Ieee_Numeric_Std_Div_Sgn_Sgn = 291 -    Ieee_Numeric_Std_Div_Sgn_Int = 292 -    Ieee_Numeric_Std_Div_Int_Sgn = 293 -    Ieee_Numeric_Std_Rem_Uns_Uns = 294 -    Ieee_Numeric_Std_Rem_Uns_Nat = 295 -    Ieee_Numeric_Std_Rem_Nat_Uns = 296 -    Ieee_Numeric_Std_Rem_Sgn_Sgn = 297 -    Ieee_Numeric_Std_Rem_Sgn_Int = 298 -    Ieee_Numeric_Std_Rem_Int_Sgn = 299 -    Ieee_Numeric_Std_Mod_Uns_Uns = 300 -    Ieee_Numeric_Std_Mod_Uns_Nat = 301 -    Ieee_Numeric_Std_Mod_Nat_Uns = 302 -    Ieee_Numeric_Std_Mod_Sgn_Sgn = 303 -    Ieee_Numeric_Std_Mod_Sgn_Int = 304 -    Ieee_Numeric_Std_Mod_Int_Sgn = 305 -    Ieee_Numeric_Std_Gt_Uns_Uns = 306 -    Ieee_Numeric_Std_Gt_Uns_Nat = 307 -    Ieee_Numeric_Std_Gt_Nat_Uns = 308 -    Ieee_Numeric_Std_Gt_Sgn_Sgn = 309 -    Ieee_Numeric_Std_Gt_Sgn_Int = 310 -    Ieee_Numeric_Std_Gt_Int_Sgn = 311 -    Ieee_Numeric_Std_Lt_Uns_Uns = 312 -    Ieee_Numeric_Std_Lt_Uns_Nat = 313 -    Ieee_Numeric_Std_Lt_Nat_Uns = 314 -    Ieee_Numeric_Std_Lt_Sgn_Sgn = 315 -    Ieee_Numeric_Std_Lt_Sgn_Int = 316 -    Ieee_Numeric_Std_Lt_Int_Sgn = 317 -    Ieee_Numeric_Std_Le_Uns_Uns = 318 -    Ieee_Numeric_Std_Le_Uns_Nat = 319 -    Ieee_Numeric_Std_Le_Nat_Uns = 320 -    Ieee_Numeric_Std_Le_Sgn_Sgn = 321 -    Ieee_Numeric_Std_Le_Sgn_Int = 322 -    Ieee_Numeric_Std_Le_Int_Sgn = 323 -    Ieee_Numeric_Std_Ge_Uns_Uns = 324 -    Ieee_Numeric_Std_Ge_Uns_Nat = 325 -    Ieee_Numeric_Std_Ge_Nat_Uns = 326 -    Ieee_Numeric_Std_Ge_Sgn_Sgn = 327 -    Ieee_Numeric_Std_Ge_Sgn_Int = 328 -    Ieee_Numeric_Std_Ge_Int_Sgn = 329 -    Ieee_Numeric_Std_Eq_Uns_Uns = 330 -    Ieee_Numeric_Std_Eq_Uns_Nat = 331 -    Ieee_Numeric_Std_Eq_Nat_Uns = 332 -    Ieee_Numeric_Std_Eq_Sgn_Sgn = 333 -    Ieee_Numeric_Std_Eq_Sgn_Int = 334 -    Ieee_Numeric_Std_Eq_Int_Sgn = 335 -    Ieee_Numeric_Std_Ne_Uns_Uns = 336 -    Ieee_Numeric_Std_Ne_Uns_Nat = 337 -    Ieee_Numeric_Std_Ne_Nat_Uns = 338 -    Ieee_Numeric_Std_Ne_Sgn_Sgn = 339 -    Ieee_Numeric_Std_Ne_Sgn_Int = 340 -    Ieee_Numeric_Std_Ne_Int_Sgn = 341 -    Ieee_Numeric_Std_Match_Gt_Uns_Uns = 342 -    Ieee_Numeric_Std_Match_Gt_Uns_Nat = 343 -    Ieee_Numeric_Std_Match_Gt_Nat_Uns = 344 -    Ieee_Numeric_Std_Match_Gt_Sgn_Sgn = 345 -    Ieee_Numeric_Std_Match_Gt_Sgn_Int = 346 -    Ieee_Numeric_Std_Match_Gt_Int_Sgn = 347 -    Ieee_Numeric_Std_Match_Lt_Uns_Uns = 348 -    Ieee_Numeric_Std_Match_Lt_Uns_Nat = 349 -    Ieee_Numeric_Std_Match_Lt_Nat_Uns = 350 -    Ieee_Numeric_Std_Match_Lt_Sgn_Sgn = 351 -    Ieee_Numeric_Std_Match_Lt_Sgn_Int = 352 -    Ieee_Numeric_Std_Match_Lt_Int_Sgn = 353 -    Ieee_Numeric_Std_Match_Le_Uns_Uns = 354 -    Ieee_Numeric_Std_Match_Le_Uns_Nat = 355 -    Ieee_Numeric_Std_Match_Le_Nat_Uns = 356 -    Ieee_Numeric_Std_Match_Le_Sgn_Sgn = 357 -    Ieee_Numeric_Std_Match_Le_Sgn_Int = 358 -    Ieee_Numeric_Std_Match_Le_Int_Sgn = 359 -    Ieee_Numeric_Std_Match_Ge_Uns_Uns = 360 -    Ieee_Numeric_Std_Match_Ge_Uns_Nat = 361 -    Ieee_Numeric_Std_Match_Ge_Nat_Uns = 362 -    Ieee_Numeric_Std_Match_Ge_Sgn_Sgn = 363 -    Ieee_Numeric_Std_Match_Ge_Sgn_Int = 364 -    Ieee_Numeric_Std_Match_Ge_Int_Sgn = 365 -    Ieee_Numeric_Std_Match_Eq_Uns_Uns = 366 -    Ieee_Numeric_Std_Match_Eq_Uns_Nat = 367 -    Ieee_Numeric_Std_Match_Eq_Nat_Uns = 368 -    Ieee_Numeric_Std_Match_Eq_Sgn_Sgn = 369 -    Ieee_Numeric_Std_Match_Eq_Sgn_Int = 370 -    Ieee_Numeric_Std_Match_Eq_Int_Sgn = 371 -    Ieee_Numeric_Std_Match_Ne_Uns_Uns = 372 -    Ieee_Numeric_Std_Match_Ne_Uns_Nat = 373 -    Ieee_Numeric_Std_Match_Ne_Nat_Uns = 374 -    Ieee_Numeric_Std_Match_Ne_Sgn_Sgn = 375 -    Ieee_Numeric_Std_Match_Ne_Sgn_Int = 376 -    Ieee_Numeric_Std_Match_Ne_Int_Sgn = 377 -    Ieee_Numeric_Std_Sll_Uns_Int = 378 -    Ieee_Numeric_Std_Sll_Sgn_Int = 379 -    Ieee_Numeric_Std_Srl_Uns_Int = 380 -    Ieee_Numeric_Std_Srl_Sgn_Int = 381 -    Ieee_Numeric_Std_Sla_Uns_Int = 382 -    Ieee_Numeric_Std_Sla_Sgn_Int = 383 -    Ieee_Numeric_Std_Sra_Uns_Int = 384 -    Ieee_Numeric_Std_Sra_Sgn_Int = 385 -    Ieee_Numeric_Std_Rol_Uns_Int = 386 -    Ieee_Numeric_Std_Rol_Sgn_Int = 387 -    Ieee_Numeric_Std_Ror_Uns_Int = 388 -    Ieee_Numeric_Std_Ror_Sgn_Int = 389 -    Ieee_Numeric_Std_And_Uns_Uns = 390 -    Ieee_Numeric_Std_And_Uns_Log = 391 -    Ieee_Numeric_Std_And_Log_Uns = 392 -    Ieee_Numeric_Std_And_Sgn_Sgn = 393 -    Ieee_Numeric_Std_And_Sgn_Log = 394 -    Ieee_Numeric_Std_And_Log_Sgn = 395 -    Ieee_Numeric_Std_Nand_Uns_Uns = 396 -    Ieee_Numeric_Std_Nand_Uns_Log = 397 -    Ieee_Numeric_Std_Nand_Log_Uns = 398 -    Ieee_Numeric_Std_Nand_Sgn_Sgn = 399 -    Ieee_Numeric_Std_Nand_Sgn_Log = 400 -    Ieee_Numeric_Std_Nand_Log_Sgn = 401 -    Ieee_Numeric_Std_Or_Uns_Uns = 402 -    Ieee_Numeric_Std_Or_Uns_Log = 403 -    Ieee_Numeric_Std_Or_Log_Uns = 404 -    Ieee_Numeric_Std_Or_Sgn_Sgn = 405 -    Ieee_Numeric_Std_Or_Sgn_Log = 406 -    Ieee_Numeric_Std_Or_Log_Sgn = 407 -    Ieee_Numeric_Std_Nor_Uns_Uns = 408 -    Ieee_Numeric_Std_Nor_Uns_Log = 409 -    Ieee_Numeric_Std_Nor_Log_Uns = 410 -    Ieee_Numeric_Std_Nor_Sgn_Sgn = 411 -    Ieee_Numeric_Std_Nor_Sgn_Log = 412 -    Ieee_Numeric_Std_Nor_Log_Sgn = 413 -    Ieee_Numeric_Std_Xor_Uns_Uns = 414 -    Ieee_Numeric_Std_Xor_Uns_Log = 415 -    Ieee_Numeric_Std_Xor_Log_Uns = 416 -    Ieee_Numeric_Std_Xor_Sgn_Sgn = 417 -    Ieee_Numeric_Std_Xor_Sgn_Log = 418 -    Ieee_Numeric_Std_Xor_Log_Sgn = 419 -    Ieee_Numeric_Std_Xnor_Uns_Uns = 420 -    Ieee_Numeric_Std_Xnor_Uns_Log = 421 -    Ieee_Numeric_Std_Xnor_Log_Uns = 422 -    Ieee_Numeric_Std_Xnor_Sgn_Sgn = 423 -    Ieee_Numeric_Std_Xnor_Sgn_Log = 424 -    Ieee_Numeric_Std_Xnor_Log_Sgn = 425 -    Ieee_Numeric_Std_Not_Uns = 426 -    Ieee_Numeric_Std_Not_Sgn = 427 -    Ieee_Numeric_Std_Abs_Sgn = 428 -    Ieee_Numeric_Std_Neg_Uns = 429 -    Ieee_Numeric_Std_Neg_Sgn = 430 -    Ieee_Numeric_Std_Min_Uns_Uns = 431 -    Ieee_Numeric_Std_Min_Uns_Nat = 432 -    Ieee_Numeric_Std_Min_Nat_Uns = 433 -    Ieee_Numeric_Std_Min_Sgn_Sgn = 434 -    Ieee_Numeric_Std_Min_Sgn_Int = 435 -    Ieee_Numeric_Std_Min_Int_Sgn = 436 -    Ieee_Numeric_Std_Max_Uns_Uns = 437 -    Ieee_Numeric_Std_Max_Uns_Nat = 438 -    Ieee_Numeric_Std_Max_Nat_Uns = 439 -    Ieee_Numeric_Std_Max_Sgn_Sgn = 440 -    Ieee_Numeric_Std_Max_Sgn_Int = 441 -    Ieee_Numeric_Std_Max_Int_Sgn = 442 -    Ieee_Numeric_Std_Shf_Left_Uns_Nat = 443 -    Ieee_Numeric_Std_Shf_Right_Uns_Nat = 444 -    Ieee_Numeric_Std_Shf_Left_Sgn_Nat = 445 -    Ieee_Numeric_Std_Shf_Right_Sgn_Nat = 446 -    Ieee_Numeric_Std_Rot_Left_Uns_Nat = 447 -    Ieee_Numeric_Std_Rot_Right_Uns_Nat = 448 -    Ieee_Numeric_Std_Rot_Left_Sgn_Nat = 449 -    Ieee_Numeric_Std_Rot_Right_Sgn_Nat = 450 -    Ieee_Numeric_Std_And_Sgn = 451 -    Ieee_Numeric_Std_Nand_Sgn = 452 -    Ieee_Numeric_Std_Or_Sgn = 453 -    Ieee_Numeric_Std_Nor_Sgn = 454 -    Ieee_Numeric_Std_Xor_Sgn = 455 -    Ieee_Numeric_Std_Xnor_Sgn = 456 -    Ieee_Numeric_Std_And_Uns = 457 -    Ieee_Numeric_Std_Nand_Uns = 458 -    Ieee_Numeric_Std_Or_Uns = 459 -    Ieee_Numeric_Std_Nor_Uns = 460 -    Ieee_Numeric_Std_Xor_Uns = 461 -    Ieee_Numeric_Std_Xnor_Uns = 462 -    Ieee_Numeric_Std_Find_Leftmost_Uns = 463 -    Ieee_Numeric_Std_Find_Rightmost_Uns = 464 -    Ieee_Numeric_Std_Find_Leftmost_Sgn = 465 -    Ieee_Numeric_Std_Find_Rightmost_Sgn = 466 -    Ieee_Numeric_Std_Match_Log = 467 -    Ieee_Numeric_Std_Match_Uns = 468 -    Ieee_Numeric_Std_Match_Sgn = 469 -    Ieee_Numeric_Std_Match_Slv = 470 -    Ieee_Numeric_Std_Match_Suv = 471 -    Ieee_Numeric_Std_To_01_Uns = 472 -    Ieee_Numeric_Std_To_01_Sgn = 473 -    Ieee_Numeric_Std_To_X01_Uns = 474 -    Ieee_Numeric_Std_To_X01_Sgn = 475 -    Ieee_Numeric_Std_To_X01Z_Uns = 476 -    Ieee_Numeric_Std_To_X01Z_Sgn = 477 -    Ieee_Numeric_Std_To_UX01_Uns = 478 -    Ieee_Numeric_Std_To_UX01_Sgn = 479 -    Ieee_Numeric_Std_Is_X_Uns = 480 -    Ieee_Numeric_Std_Is_X_Sgn = 481 -    Ieee_Numeric_Bit_Toint_Uns_Nat = 482 -    Ieee_Numeric_Bit_Toint_Sgn_Int = 483 -    Ieee_Numeric_Bit_Touns_Nat_Nat_Uns = 484 -    Ieee_Numeric_Bit_Touns_Nat_Uns_Uns = 485 -    Ieee_Numeric_Bit_Tosgn_Int_Nat_Sgn = 486 -    Ieee_Numeric_Bit_Tosgn_Int_Sgn_Sgn = 487 -    Ieee_Numeric_Std_Unsigned_To_Integer_Slv_Nat = 488 -    Ieee_Numeric_Std_Unsigned_To_Slv_Nat_Nat_Slv = 489 -    Ieee_Math_Real_Ceil = 490 -    Ieee_Math_Real_Floor = 491 -    Ieee_Math_Real_Round = 492 -    Ieee_Math_Real_Log2 = 493 -    Ieee_Math_Real_Sin = 494 -    Ieee_Math_Real_Cos = 495 -    Ieee_Math_Real_Arctan = 496 -    Ieee_Math_Real_Pow = 497 -    Ieee_Std_Logic_Unsigned_Add_Slv_Slv = 498 -    Ieee_Std_Logic_Unsigned_Add_Slv_Int = 499 -    Ieee_Std_Logic_Unsigned_Add_Int_Slv = 500 -    Ieee_Std_Logic_Unsigned_Add_Slv_Log = 501 -    Ieee_Std_Logic_Unsigned_Add_Log_Slv = 502 -    Ieee_Std_Logic_Unsigned_Sub_Slv_Slv = 503 -    Ieee_Std_Logic_Unsigned_Sub_Slv_Int = 504 -    Ieee_Std_Logic_Unsigned_Sub_Int_Slv = 505 -    Ieee_Std_Logic_Unsigned_Sub_Slv_Log = 506 -    Ieee_Std_Logic_Unsigned_Sub_Log_Slv = 507 -    Ieee_Std_Logic_Unsigned_Id_Slv = 508 -    Ieee_Std_Logic_Unsigned_Mul_Slv_Slv = 509 -    Ieee_Std_Logic_Unsigned_Lt_Slv_Slv = 510 -    Ieee_Std_Logic_Unsigned_Lt_Slv_Int = 511 -    Ieee_Std_Logic_Unsigned_Lt_Int_Slv = 512 -    Ieee_Std_Logic_Unsigned_Le_Slv_Slv = 513 -    Ieee_Std_Logic_Unsigned_Le_Slv_Int = 514 -    Ieee_Std_Logic_Unsigned_Le_Int_Slv = 515 -    Ieee_Std_Logic_Unsigned_Gt_Slv_Slv = 516 -    Ieee_Std_Logic_Unsigned_Gt_Slv_Int = 517 -    Ieee_Std_Logic_Unsigned_Gt_Int_Slv = 518 -    Ieee_Std_Logic_Unsigned_Ge_Slv_Slv = 519 -    Ieee_Std_Logic_Unsigned_Ge_Slv_Int = 520 -    Ieee_Std_Logic_Unsigned_Ge_Int_Slv = 521 -    Ieee_Std_Logic_Unsigned_Eq_Slv_Slv = 522 -    Ieee_Std_Logic_Unsigned_Eq_Slv_Int = 523 -    Ieee_Std_Logic_Unsigned_Eq_Int_Slv = 524 -    Ieee_Std_Logic_Unsigned_Ne_Slv_Slv = 525 -    Ieee_Std_Logic_Unsigned_Ne_Slv_Int = 526 -    Ieee_Std_Logic_Unsigned_Ne_Int_Slv = 527 -    Ieee_Std_Logic_Unsigned_Conv_Integer = 528 -    Ieee_Std_Logic_Unsigned_Shl = 529 -    Ieee_Std_Logic_Unsigned_Shr = 530 -    Ieee_Std_Logic_Signed_Add_Slv_Slv = 531 -    Ieee_Std_Logic_Signed_Add_Slv_Int = 532 -    Ieee_Std_Logic_Signed_Add_Int_Slv = 533 -    Ieee_Std_Logic_Signed_Add_Slv_Log = 534 -    Ieee_Std_Logic_Signed_Add_Log_Slv = 535 -    Ieee_Std_Logic_Signed_Sub_Slv_Slv = 536 -    Ieee_Std_Logic_Signed_Sub_Slv_Int = 537 -    Ieee_Std_Logic_Signed_Sub_Int_Slv = 538 -    Ieee_Std_Logic_Signed_Sub_Slv_Log = 539 -    Ieee_Std_Logic_Signed_Sub_Log_Slv = 540 -    Ieee_Std_Logic_Signed_Id_Slv = 541 -    Ieee_Std_Logic_Signed_Neg_Slv = 542 -    Ieee_Std_Logic_Signed_Abs_Slv = 543 -    Ieee_Std_Logic_Signed_Mul_Slv_Slv = 544 -    Ieee_Std_Logic_Signed_Lt_Slv_Slv = 545 -    Ieee_Std_Logic_Signed_Lt_Slv_Int = 546 -    Ieee_Std_Logic_Signed_Lt_Int_Slv = 547 -    Ieee_Std_Logic_Signed_Le_Slv_Slv = 548 -    Ieee_Std_Logic_Signed_Le_Slv_Int = 549 -    Ieee_Std_Logic_Signed_Le_Int_Slv = 550 -    Ieee_Std_Logic_Signed_Gt_Slv_Slv = 551 -    Ieee_Std_Logic_Signed_Gt_Slv_Int = 552 -    Ieee_Std_Logic_Signed_Gt_Int_Slv = 553 -    Ieee_Std_Logic_Signed_Ge_Slv_Slv = 554 -    Ieee_Std_Logic_Signed_Ge_Slv_Int = 555 -    Ieee_Std_Logic_Signed_Ge_Int_Slv = 556 -    Ieee_Std_Logic_Signed_Eq_Slv_Slv = 557 -    Ieee_Std_Logic_Signed_Eq_Slv_Int = 558 -    Ieee_Std_Logic_Signed_Eq_Int_Slv = 559 -    Ieee_Std_Logic_Signed_Ne_Slv_Slv = 560 -    Ieee_Std_Logic_Signed_Ne_Slv_Int = 561 -    Ieee_Std_Logic_Signed_Ne_Int_Slv = 562 -    Ieee_Std_Logic_Signed_Conv_Integer = 563 -    Ieee_Std_Logic_Signed_Shl = 564 -    Ieee_Std_Logic_Signed_Shr = 565 -    Ieee_Std_Logic_Arith_Conv_Unsigned_Int = 566 -    Ieee_Std_Logic_Arith_Conv_Unsigned_Uns = 567 -    Ieee_Std_Logic_Arith_Conv_Unsigned_Sgn = 568 -    Ieee_Std_Logic_Arith_Conv_Unsigned_Log = 569 -    Ieee_Std_Logic_Arith_Conv_Integer_Int = 570 -    Ieee_Std_Logic_Arith_Conv_Integer_Uns = 571 -    Ieee_Std_Logic_Arith_Conv_Integer_Sgn = 572 -    Ieee_Std_Logic_Arith_Conv_Integer_Log = 573 -    Ieee_Std_Logic_Arith_Conv_Vector_Int = 574 -    Ieee_Std_Logic_Arith_Conv_Vector_Uns = 575 -    Ieee_Std_Logic_Arith_Conv_Vector_Sgn = 576 -    Ieee_Std_Logic_Arith_Conv_Vector_Log = 577 -    Ieee_Std_Logic_Arith_Ext = 578 -    Ieee_Std_Logic_Arith_Sxt = 579 -    Ieee_Std_Logic_Arith_Id_Uns_Uns = 580 -    Ieee_Std_Logic_Arith_Id_Sgn_Sgn = 581 -    Ieee_Std_Logic_Arith_Neg_Sgn_Sgn = 582 -    Ieee_Std_Logic_Arith_Abs_Sgn_Sgn = 583 -    Ieee_Std_Logic_Arith_Shl_Uns = 584 -    Ieee_Std_Logic_Arith_Shl_Sgn = 585 -    Ieee_Std_Logic_Arith_Shr_Uns = 586 -    Ieee_Std_Logic_Arith_Shr_Sgn = 587 -    Ieee_Std_Logic_Arith_Id_Uns_Slv = 588 -    Ieee_Std_Logic_Arith_Id_Sgn_Slv = 589 -    Ieee_Std_Logic_Arith_Neg_Sgn_Slv = 590 -    Ieee_Std_Logic_Arith_Abs_Sgn_Slv = 591 -    Ieee_Std_Logic_Arith_Mul_Uns_Uns_Uns = 592 -    Ieee_Std_Logic_Arith_Mul_Sgn_Sgn_Sgn = 593 -    Ieee_Std_Logic_Arith_Mul_Sgn_Uns_Sgn = 594 -    Ieee_Std_Logic_Arith_Mul_Uns_Sgn_Sgn = 595 -    Ieee_Std_Logic_Arith_Mul_Uns_Uns_Slv = 596 -    Ieee_Std_Logic_Arith_Mul_Sgn_Sgn_Slv = 597 -    Ieee_Std_Logic_Arith_Mul_Sgn_Uns_Slv = 598 -    Ieee_Std_Logic_Arith_Mul_Uns_Sgn_Slv = 599 -    Ieee_Std_Logic_Arith_Add_Uns_Uns_Uns = 600 -    Ieee_Std_Logic_Arith_Add_Sgn_Sgn_Sgn = 601 -    Ieee_Std_Logic_Arith_Add_Uns_Sgn_Sgn = 602 -    Ieee_Std_Logic_Arith_Add_Sgn_Uns_Sgn = 603 -    Ieee_Std_Logic_Arith_Add_Uns_Int_Uns = 604 -    Ieee_Std_Logic_Arith_Add_Int_Uns_Uns = 605 -    Ieee_Std_Logic_Arith_Add_Sgn_Int_Sgn = 606 -    Ieee_Std_Logic_Arith_Add_Int_Sgn_Sgn = 607 -    Ieee_Std_Logic_Arith_Add_Uns_Log_Uns = 608 -    Ieee_Std_Logic_Arith_Add_Log_Uns_Uns = 609 -    Ieee_Std_Logic_Arith_Add_Sgn_Log_Sgn = 610 -    Ieee_Std_Logic_Arith_Add_Log_Sgn_Sgn = 611 -    Ieee_Std_Logic_Arith_Add_Uns_Uns_Slv = 612 -    Ieee_Std_Logic_Arith_Add_Sgn_Sgn_Slv = 613 -    Ieee_Std_Logic_Arith_Add_Uns_Sgn_Slv = 614 -    Ieee_Std_Logic_Arith_Add_Sgn_Uns_Slv = 615 -    Ieee_Std_Logic_Arith_Add_Uns_Int_Slv = 616 -    Ieee_Std_Logic_Arith_Add_Int_Uns_Slv = 617 -    Ieee_Std_Logic_Arith_Add_Sgn_Int_Slv = 618 -    Ieee_Std_Logic_Arith_Add_Int_Sgn_Slv = 619 -    Ieee_Std_Logic_Arith_Add_Uns_Log_Slv = 620 -    Ieee_Std_Logic_Arith_Add_Log_Uns_Slv = 621 -    Ieee_Std_Logic_Arith_Add_Sgn_Log_Slv = 622 -    Ieee_Std_Logic_Arith_Add_Log_Sgn_Slv = 623 -    Ieee_Std_Logic_Arith_Sub_Uns_Uns_Uns = 624 -    Ieee_Std_Logic_Arith_Sub_Sgn_Sgn_Sgn = 625 -    Ieee_Std_Logic_Arith_Sub_Uns_Sgn_Sgn = 626 -    Ieee_Std_Logic_Arith_Sub_Sgn_Uns_Sgn = 627 -    Ieee_Std_Logic_Arith_Sub_Uns_Int_Uns = 628 -    Ieee_Std_Logic_Arith_Sub_Int_Uns_Uns = 629 -    Ieee_Std_Logic_Arith_Sub_Sgn_Int_Sgn = 630 -    Ieee_Std_Logic_Arith_Sub_Int_Sgn_Sgn = 631 -    Ieee_Std_Logic_Arith_Sub_Uns_Log_Uns = 632 -    Ieee_Std_Logic_Arith_Sub_Log_Uns_Uns = 633 -    Ieee_Std_Logic_Arith_Sub_Sgn_Log_Sgn = 634 -    Ieee_Std_Logic_Arith_Sub_Log_Sgn_Sgn = 635 -    Ieee_Std_Logic_Arith_Sub_Uns_Uns_Slv = 636 -    Ieee_Std_Logic_Arith_Sub_Sgn_Sgn_Slv = 637 -    Ieee_Std_Logic_Arith_Sub_Uns_Sgn_Slv = 638 -    Ieee_Std_Logic_Arith_Sub_Sgn_Uns_Slv = 639 -    Ieee_Std_Logic_Arith_Sub_Uns_Int_Slv = 640 -    Ieee_Std_Logic_Arith_Sub_Int_Uns_Slv = 641 -    Ieee_Std_Logic_Arith_Sub_Sgn_Int_Slv = 642 -    Ieee_Std_Logic_Arith_Sub_Int_Sgn_Slv = 643 -    Ieee_Std_Logic_Arith_Sub_Uns_Log_Slv = 644 -    Ieee_Std_Logic_Arith_Sub_Log_Uns_Slv = 645 -    Ieee_Std_Logic_Arith_Sub_Sgn_Log_Slv = 646 -    Ieee_Std_Logic_Arith_Sub_Log_Sgn_Slv = 647 -    Ieee_Std_Logic_Arith_Lt_Uns_Uns = 648 -    Ieee_Std_Logic_Arith_Lt_Sgn_Sgn = 649 -    Ieee_Std_Logic_Arith_Lt_Uns_Sgn = 650 -    Ieee_Std_Logic_Arith_Lt_Sgn_Uns = 651 -    Ieee_Std_Logic_Arith_Lt_Uns_Int = 652 -    Ieee_Std_Logic_Arith_Lt_Int_Uns = 653 -    Ieee_Std_Logic_Arith_Lt_Sgn_Int = 654 -    Ieee_Std_Logic_Arith_Lt_Int_Sgn = 655 -    Ieee_Std_Logic_Arith_Le_Uns_Uns = 656 -    Ieee_Std_Logic_Arith_Le_Sgn_Sgn = 657 -    Ieee_Std_Logic_Arith_Le_Uns_Sgn = 658 -    Ieee_Std_Logic_Arith_Le_Sgn_Uns = 659 -    Ieee_Std_Logic_Arith_Le_Uns_Int = 660 -    Ieee_Std_Logic_Arith_Le_Int_Uns = 661 -    Ieee_Std_Logic_Arith_Le_Sgn_Int = 662 -    Ieee_Std_Logic_Arith_Le_Int_Sgn = 663 -    Ieee_Std_Logic_Arith_Gt_Uns_Uns = 664 -    Ieee_Std_Logic_Arith_Gt_Sgn_Sgn = 665 -    Ieee_Std_Logic_Arith_Gt_Uns_Sgn = 666 -    Ieee_Std_Logic_Arith_Gt_Sgn_Uns = 667 -    Ieee_Std_Logic_Arith_Gt_Uns_Int = 668 -    Ieee_Std_Logic_Arith_Gt_Int_Uns = 669 -    Ieee_Std_Logic_Arith_Gt_Sgn_Int = 670 -    Ieee_Std_Logic_Arith_Gt_Int_Sgn = 671 -    Ieee_Std_Logic_Arith_Ge_Uns_Uns = 672 -    Ieee_Std_Logic_Arith_Ge_Sgn_Sgn = 673 -    Ieee_Std_Logic_Arith_Ge_Uns_Sgn = 674 -    Ieee_Std_Logic_Arith_Ge_Sgn_Uns = 675 -    Ieee_Std_Logic_Arith_Ge_Uns_Int = 676 -    Ieee_Std_Logic_Arith_Ge_Int_Uns = 677 -    Ieee_Std_Logic_Arith_Ge_Sgn_Int = 678 -    Ieee_Std_Logic_Arith_Ge_Int_Sgn = 679 -    Ieee_Std_Logic_Arith_Eq_Uns_Uns = 680 -    Ieee_Std_Logic_Arith_Eq_Sgn_Sgn = 681 -    Ieee_Std_Logic_Arith_Eq_Uns_Sgn = 682 -    Ieee_Std_Logic_Arith_Eq_Sgn_Uns = 683 -    Ieee_Std_Logic_Arith_Eq_Uns_Int = 684 -    Ieee_Std_Logic_Arith_Eq_Int_Uns = 685 -    Ieee_Std_Logic_Arith_Eq_Sgn_Int = 686 -    Ieee_Std_Logic_Arith_Eq_Int_Sgn = 687 -    Ieee_Std_Logic_Arith_Ne_Uns_Uns = 688 -    Ieee_Std_Logic_Arith_Ne_Sgn_Sgn = 689 -    Ieee_Std_Logic_Arith_Ne_Uns_Sgn = 690 -    Ieee_Std_Logic_Arith_Ne_Sgn_Uns = 691 -    Ieee_Std_Logic_Arith_Ne_Uns_Int = 692 -    Ieee_Std_Logic_Arith_Ne_Int_Uns = 693 -    Ieee_Std_Logic_Arith_Ne_Sgn_Int = 694 -    Ieee_Std_Logic_Arith_Ne_Int_Sgn = 695 -    Ieee_Std_Logic_Misc_And_Reduce_Slv = 696 -    Ieee_Std_Logic_Misc_And_Reduce_Suv = 697 -    Ieee_Std_Logic_Misc_Nand_Reduce_Slv = 698 -    Ieee_Std_Logic_Misc_Nand_Reduce_Suv = 699 -    Ieee_Std_Logic_Misc_Or_Reduce_Slv = 700 -    Ieee_Std_Logic_Misc_Or_Reduce_Suv = 701 -    Ieee_Std_Logic_Misc_Nor_Reduce_Slv = 702 -    Ieee_Std_Logic_Misc_Nor_Reduce_Suv = 703 -    Ieee_Std_Logic_Misc_Xor_Reduce_Slv = 704 -    Ieee_Std_Logic_Misc_Xor_Reduce_Suv = 705 -    Ieee_Std_Logic_Misc_Xnor_Reduce_Slv = 706 -    Ieee_Std_Logic_Misc_Xnor_Reduce_Suv = 707 +    Ieee_1164_To_01_Log_Log = 250 +    Ieee_1164_To_01_Slv_Log = 251 +    Ieee_1164_To_Hstring = 252 +    Ieee_1164_To_Ostring = 253 +    Ieee_Numeric_Std_Toint_Uns_Nat = 254 +    Ieee_Numeric_Std_Toint_Sgn_Int = 255 +    Ieee_Numeric_Std_Touns_Nat_Nat_Uns = 256 +    Ieee_Numeric_Std_Touns_Nat_Uns_Uns = 257 +    Ieee_Numeric_Std_Tosgn_Int_Nat_Sgn = 258 +    Ieee_Numeric_Std_Tosgn_Int_Sgn_Sgn = 259 +    Ieee_Numeric_Std_Resize_Uns_Nat = 260 +    Ieee_Numeric_Std_Resize_Sgn_Nat = 261 +    Ieee_Numeric_Std_Resize_Uns_Uns = 262 +    Ieee_Numeric_Std_Resize_Sgn_Sgn = 263 +    Ieee_Numeric_Std_Add_Uns_Uns = 264 +    Ieee_Numeric_Std_Add_Uns_Nat = 265 +    Ieee_Numeric_Std_Add_Nat_Uns = 266 +    Ieee_Numeric_Std_Add_Uns_Log = 267 +    Ieee_Numeric_Std_Add_Log_Uns = 268 +    Ieee_Numeric_Std_Add_Sgn_Sgn = 269 +    Ieee_Numeric_Std_Add_Sgn_Int = 270 +    Ieee_Numeric_Std_Add_Int_Sgn = 271 +    Ieee_Numeric_Std_Add_Sgn_Log = 272 +    Ieee_Numeric_Std_Add_Log_Sgn = 273 +    Ieee_Numeric_Std_Sub_Uns_Uns = 274 +    Ieee_Numeric_Std_Sub_Uns_Nat = 275 +    Ieee_Numeric_Std_Sub_Nat_Uns = 276 +    Ieee_Numeric_Std_Sub_Uns_Log = 277 +    Ieee_Numeric_Std_Sub_Log_Uns = 278 +    Ieee_Numeric_Std_Sub_Sgn_Sgn = 279 +    Ieee_Numeric_Std_Sub_Sgn_Int = 280 +    Ieee_Numeric_Std_Sub_Int_Sgn = 281 +    Ieee_Numeric_Std_Sub_Sgn_Log = 282 +    Ieee_Numeric_Std_Sub_Log_Sgn = 283 +    Ieee_Numeric_Std_Mul_Uns_Uns = 284 +    Ieee_Numeric_Std_Mul_Uns_Nat = 285 +    Ieee_Numeric_Std_Mul_Nat_Uns = 286 +    Ieee_Numeric_Std_Mul_Sgn_Sgn = 287 +    Ieee_Numeric_Std_Mul_Sgn_Int = 288 +    Ieee_Numeric_Std_Mul_Int_Sgn = 289 +    Ieee_Numeric_Std_Div_Uns_Uns = 290 +    Ieee_Numeric_Std_Div_Uns_Nat = 291 +    Ieee_Numeric_Std_Div_Nat_Uns = 292 +    Ieee_Numeric_Std_Div_Sgn_Sgn = 293 +    Ieee_Numeric_Std_Div_Sgn_Int = 294 +    Ieee_Numeric_Std_Div_Int_Sgn = 295 +    Ieee_Numeric_Std_Rem_Uns_Uns = 296 +    Ieee_Numeric_Std_Rem_Uns_Nat = 297 +    Ieee_Numeric_Std_Rem_Nat_Uns = 298 +    Ieee_Numeric_Std_Rem_Sgn_Sgn = 299 +    Ieee_Numeric_Std_Rem_Sgn_Int = 300 +    Ieee_Numeric_Std_Rem_Int_Sgn = 301 +    Ieee_Numeric_Std_Mod_Uns_Uns = 302 +    Ieee_Numeric_Std_Mod_Uns_Nat = 303 +    Ieee_Numeric_Std_Mod_Nat_Uns = 304 +    Ieee_Numeric_Std_Mod_Sgn_Sgn = 305 +    Ieee_Numeric_Std_Mod_Sgn_Int = 306 +    Ieee_Numeric_Std_Mod_Int_Sgn = 307 +    Ieee_Numeric_Std_Gt_Uns_Uns = 308 +    Ieee_Numeric_Std_Gt_Uns_Nat = 309 +    Ieee_Numeric_Std_Gt_Nat_Uns = 310 +    Ieee_Numeric_Std_Gt_Sgn_Sgn = 311 +    Ieee_Numeric_Std_Gt_Sgn_Int = 312 +    Ieee_Numeric_Std_Gt_Int_Sgn = 313 +    Ieee_Numeric_Std_Lt_Uns_Uns = 314 +    Ieee_Numeric_Std_Lt_Uns_Nat = 315 +    Ieee_Numeric_Std_Lt_Nat_Uns = 316 +    Ieee_Numeric_Std_Lt_Sgn_Sgn = 317 +    Ieee_Numeric_Std_Lt_Sgn_Int = 318 +    Ieee_Numeric_Std_Lt_Int_Sgn = 319 +    Ieee_Numeric_Std_Le_Uns_Uns = 320 +    Ieee_Numeric_Std_Le_Uns_Nat = 321 +    Ieee_Numeric_Std_Le_Nat_Uns = 322 +    Ieee_Numeric_Std_Le_Sgn_Sgn = 323 +    Ieee_Numeric_Std_Le_Sgn_Int = 324 +    Ieee_Numeric_Std_Le_Int_Sgn = 325 +    Ieee_Numeric_Std_Ge_Uns_Uns = 326 +    Ieee_Numeric_Std_Ge_Uns_Nat = 327 +    Ieee_Numeric_Std_Ge_Nat_Uns = 328 +    Ieee_Numeric_Std_Ge_Sgn_Sgn = 329 +    Ieee_Numeric_Std_Ge_Sgn_Int = 330 +    Ieee_Numeric_Std_Ge_Int_Sgn = 331 +    Ieee_Numeric_Std_Eq_Uns_Uns = 332 +    Ieee_Numeric_Std_Eq_Uns_Nat = 333 +    Ieee_Numeric_Std_Eq_Nat_Uns = 334 +    Ieee_Numeric_Std_Eq_Sgn_Sgn = 335 +    Ieee_Numeric_Std_Eq_Sgn_Int = 336 +    Ieee_Numeric_Std_Eq_Int_Sgn = 337 +    Ieee_Numeric_Std_Ne_Uns_Uns = 338 +    Ieee_Numeric_Std_Ne_Uns_Nat = 339 +    Ieee_Numeric_Std_Ne_Nat_Uns = 340 +    Ieee_Numeric_Std_Ne_Sgn_Sgn = 341 +    Ieee_Numeric_Std_Ne_Sgn_Int = 342 +    Ieee_Numeric_Std_Ne_Int_Sgn = 343 +    Ieee_Numeric_Std_Match_Gt_Uns_Uns = 344 +    Ieee_Numeric_Std_Match_Gt_Uns_Nat = 345 +    Ieee_Numeric_Std_Match_Gt_Nat_Uns = 346 +    Ieee_Numeric_Std_Match_Gt_Sgn_Sgn = 347 +    Ieee_Numeric_Std_Match_Gt_Sgn_Int = 348 +    Ieee_Numeric_Std_Match_Gt_Int_Sgn = 349 +    Ieee_Numeric_Std_Match_Lt_Uns_Uns = 350 +    Ieee_Numeric_Std_Match_Lt_Uns_Nat = 351 +    Ieee_Numeric_Std_Match_Lt_Nat_Uns = 352 +    Ieee_Numeric_Std_Match_Lt_Sgn_Sgn = 353 +    Ieee_Numeric_Std_Match_Lt_Sgn_Int = 354 +    Ieee_Numeric_Std_Match_Lt_Int_Sgn = 355 +    Ieee_Numeric_Std_Match_Le_Uns_Uns = 356 +    Ieee_Numeric_Std_Match_Le_Uns_Nat = 357 +    Ieee_Numeric_Std_Match_Le_Nat_Uns = 358 +    Ieee_Numeric_Std_Match_Le_Sgn_Sgn = 359 +    Ieee_Numeric_Std_Match_Le_Sgn_Int = 360 +    Ieee_Numeric_Std_Match_Le_Int_Sgn = 361 +    Ieee_Numeric_Std_Match_Ge_Uns_Uns = 362 +    Ieee_Numeric_Std_Match_Ge_Uns_Nat = 363 +    Ieee_Numeric_Std_Match_Ge_Nat_Uns = 364 +    Ieee_Numeric_Std_Match_Ge_Sgn_Sgn = 365 +    Ieee_Numeric_Std_Match_Ge_Sgn_Int = 366 +    Ieee_Numeric_Std_Match_Ge_Int_Sgn = 367 +    Ieee_Numeric_Std_Match_Eq_Uns_Uns = 368 +    Ieee_Numeric_Std_Match_Eq_Uns_Nat = 369 +    Ieee_Numeric_Std_Match_Eq_Nat_Uns = 370 +    Ieee_Numeric_Std_Match_Eq_Sgn_Sgn = 371 +    Ieee_Numeric_Std_Match_Eq_Sgn_Int = 372 +    Ieee_Numeric_Std_Match_Eq_Int_Sgn = 373 +    Ieee_Numeric_Std_Match_Ne_Uns_Uns = 374 +    Ieee_Numeric_Std_Match_Ne_Uns_Nat = 375 +    Ieee_Numeric_Std_Match_Ne_Nat_Uns = 376 +    Ieee_Numeric_Std_Match_Ne_Sgn_Sgn = 377 +    Ieee_Numeric_Std_Match_Ne_Sgn_Int = 378 +    Ieee_Numeric_Std_Match_Ne_Int_Sgn = 379 +    Ieee_Numeric_Std_Sll_Uns_Int = 380 +    Ieee_Numeric_Std_Sll_Sgn_Int = 381 +    Ieee_Numeric_Std_Srl_Uns_Int = 382 +    Ieee_Numeric_Std_Srl_Sgn_Int = 383 +    Ieee_Numeric_Std_Sla_Uns_Int = 384 +    Ieee_Numeric_Std_Sla_Sgn_Int = 385 +    Ieee_Numeric_Std_Sra_Uns_Int = 386 +    Ieee_Numeric_Std_Sra_Sgn_Int = 387 +    Ieee_Numeric_Std_Rol_Uns_Int = 388 +    Ieee_Numeric_Std_Rol_Sgn_Int = 389 +    Ieee_Numeric_Std_Ror_Uns_Int = 390 +    Ieee_Numeric_Std_Ror_Sgn_Int = 391 +    Ieee_Numeric_Std_And_Uns_Uns = 392 +    Ieee_Numeric_Std_And_Uns_Log = 393 +    Ieee_Numeric_Std_And_Log_Uns = 394 +    Ieee_Numeric_Std_And_Sgn_Sgn = 395 +    Ieee_Numeric_Std_And_Sgn_Log = 396 +    Ieee_Numeric_Std_And_Log_Sgn = 397 +    Ieee_Numeric_Std_Nand_Uns_Uns = 398 +    Ieee_Numeric_Std_Nand_Uns_Log = 399 +    Ieee_Numeric_Std_Nand_Log_Uns = 400 +    Ieee_Numeric_Std_Nand_Sgn_Sgn = 401 +    Ieee_Numeric_Std_Nand_Sgn_Log = 402 +    Ieee_Numeric_Std_Nand_Log_Sgn = 403 +    Ieee_Numeric_Std_Or_Uns_Uns = 404 +    Ieee_Numeric_Std_Or_Uns_Log = 405 +    Ieee_Numeric_Std_Or_Log_Uns = 406 +    Ieee_Numeric_Std_Or_Sgn_Sgn = 407 +    Ieee_Numeric_Std_Or_Sgn_Log = 408 +    Ieee_Numeric_Std_Or_Log_Sgn = 409 +    Ieee_Numeric_Std_Nor_Uns_Uns = 410 +    Ieee_Numeric_Std_Nor_Uns_Log = 411 +    Ieee_Numeric_Std_Nor_Log_Uns = 412 +    Ieee_Numeric_Std_Nor_Sgn_Sgn = 413 +    Ieee_Numeric_Std_Nor_Sgn_Log = 414 +    Ieee_Numeric_Std_Nor_Log_Sgn = 415 +    Ieee_Numeric_Std_Xor_Uns_Uns = 416 +    Ieee_Numeric_Std_Xor_Uns_Log = 417 +    Ieee_Numeric_Std_Xor_Log_Uns = 418 +    Ieee_Numeric_Std_Xor_Sgn_Sgn = 419 +    Ieee_Numeric_Std_Xor_Sgn_Log = 420 +    Ieee_Numeric_Std_Xor_Log_Sgn = 421 +    Ieee_Numeric_Std_Xnor_Uns_Uns = 422 +    Ieee_Numeric_Std_Xnor_Uns_Log = 423 +    Ieee_Numeric_Std_Xnor_Log_Uns = 424 +    Ieee_Numeric_Std_Xnor_Sgn_Sgn = 425 +    Ieee_Numeric_Std_Xnor_Sgn_Log = 426 +    Ieee_Numeric_Std_Xnor_Log_Sgn = 427 +    Ieee_Numeric_Std_Not_Uns = 428 +    Ieee_Numeric_Std_Not_Sgn = 429 +    Ieee_Numeric_Std_Abs_Sgn = 430 +    Ieee_Numeric_Std_Neg_Uns = 431 +    Ieee_Numeric_Std_Neg_Sgn = 432 +    Ieee_Numeric_Std_Min_Uns_Uns = 433 +    Ieee_Numeric_Std_Min_Uns_Nat = 434 +    Ieee_Numeric_Std_Min_Nat_Uns = 435 +    Ieee_Numeric_Std_Min_Sgn_Sgn = 436 +    Ieee_Numeric_Std_Min_Sgn_Int = 437 +    Ieee_Numeric_Std_Min_Int_Sgn = 438 +    Ieee_Numeric_Std_Max_Uns_Uns = 439 +    Ieee_Numeric_Std_Max_Uns_Nat = 440 +    Ieee_Numeric_Std_Max_Nat_Uns = 441 +    Ieee_Numeric_Std_Max_Sgn_Sgn = 442 +    Ieee_Numeric_Std_Max_Sgn_Int = 443 +    Ieee_Numeric_Std_Max_Int_Sgn = 444 +    Ieee_Numeric_Std_Shf_Left_Uns_Nat = 445 +    Ieee_Numeric_Std_Shf_Right_Uns_Nat = 446 +    Ieee_Numeric_Std_Shf_Left_Sgn_Nat = 447 +    Ieee_Numeric_Std_Shf_Right_Sgn_Nat = 448 +    Ieee_Numeric_Std_Rot_Left_Uns_Nat = 449 +    Ieee_Numeric_Std_Rot_Right_Uns_Nat = 450 +    Ieee_Numeric_Std_Rot_Left_Sgn_Nat = 451 +    Ieee_Numeric_Std_Rot_Right_Sgn_Nat = 452 +    Ieee_Numeric_Std_And_Sgn = 453 +    Ieee_Numeric_Std_Nand_Sgn = 454 +    Ieee_Numeric_Std_Or_Sgn = 455 +    Ieee_Numeric_Std_Nor_Sgn = 456 +    Ieee_Numeric_Std_Xor_Sgn = 457 +    Ieee_Numeric_Std_Xnor_Sgn = 458 +    Ieee_Numeric_Std_And_Uns = 459 +    Ieee_Numeric_Std_Nand_Uns = 460 +    Ieee_Numeric_Std_Or_Uns = 461 +    Ieee_Numeric_Std_Nor_Uns = 462 +    Ieee_Numeric_Std_Xor_Uns = 463 +    Ieee_Numeric_Std_Xnor_Uns = 464 +    Ieee_Numeric_Std_Find_Leftmost_Uns = 465 +    Ieee_Numeric_Std_Find_Rightmost_Uns = 466 +    Ieee_Numeric_Std_Find_Leftmost_Sgn = 467 +    Ieee_Numeric_Std_Find_Rightmost_Sgn = 468 +    Ieee_Numeric_Std_Match_Log = 469 +    Ieee_Numeric_Std_Match_Uns = 470 +    Ieee_Numeric_Std_Match_Sgn = 471 +    Ieee_Numeric_Std_Match_Slv = 472 +    Ieee_Numeric_Std_Match_Suv = 473 +    Ieee_Numeric_Std_To_01_Uns = 474 +    Ieee_Numeric_Std_To_01_Sgn = 475 +    Ieee_Numeric_Std_To_X01_Uns = 476 +    Ieee_Numeric_Std_To_X01_Sgn = 477 +    Ieee_Numeric_Std_To_X01Z_Uns = 478 +    Ieee_Numeric_Std_To_X01Z_Sgn = 479 +    Ieee_Numeric_Std_To_UX01_Uns = 480 +    Ieee_Numeric_Std_To_UX01_Sgn = 481 +    Ieee_Numeric_Std_Is_X_Uns = 482 +    Ieee_Numeric_Std_Is_X_Sgn = 483 +    Ieee_Numeric_Std_To_Hstring_Uns = 484 +    Ieee_Numeric_Std_To_Ostring_Uns = 485 +    Ieee_Numeric_Std_To_Hstring_Sgn = 486 +    Ieee_Numeric_Std_To_Ostring_Sgn = 487 +    Ieee_Numeric_Bit_Toint_Uns_Nat = 488 +    Ieee_Numeric_Bit_Toint_Sgn_Int = 489 +    Ieee_Numeric_Bit_Touns_Nat_Nat_Uns = 490 +    Ieee_Numeric_Bit_Touns_Nat_Uns_Uns = 491 +    Ieee_Numeric_Bit_Tosgn_Int_Nat_Sgn = 492 +    Ieee_Numeric_Bit_Tosgn_Int_Sgn_Sgn = 493 +    Ieee_Numeric_Std_Unsigned_Add_Slv_Slv = 494 +    Ieee_Numeric_Std_Unsigned_Add_Slv_Nat = 495 +    Ieee_Numeric_Std_Unsigned_Add_Nat_Slv = 496 +    Ieee_Numeric_Std_Unsigned_Sub_Slv_Slv = 497 +    Ieee_Numeric_Std_Unsigned_Sub_Slv_Nat = 498 +    Ieee_Numeric_Std_Unsigned_Sub_Nat_Slv = 499 +    Ieee_Numeric_Std_Unsigned_Find_Rightmost = 500 +    Ieee_Numeric_Std_Unsigned_Find_Leftmost = 501 +    Ieee_Numeric_Std_Unsigned_Shift_Left = 502 +    Ieee_Numeric_Std_Unsigned_Shift_Right = 503 +    Ieee_Numeric_Std_Unsigned_Rotate_Left = 504 +    Ieee_Numeric_Std_Unsigned_Rotate_Right = 505 +    Ieee_Numeric_Std_Unsigned_To_Integer_Slv_Nat = 506 +    Ieee_Numeric_Std_Unsigned_To_Slv_Nat_Nat = 507 +    Ieee_Numeric_Std_Unsigned_To_Slv_Nat_Slv = 508 +    Ieee_Numeric_Std_Unsigned_Resize_Slv_Nat = 509 +    Ieee_Numeric_Std_Unsigned_Resize_Slv_Slv = 510 +    Ieee_Numeric_Std_Unsigned_Maximum_Slv_Slv = 511 +    Ieee_Numeric_Std_Unsigned_Minimum_Slv_Slv = 512 +    Ieee_Math_Real_Ceil = 513 +    Ieee_Math_Real_Floor = 514 +    Ieee_Math_Real_Round = 515 +    Ieee_Math_Real_Log2 = 516 +    Ieee_Math_Real_Sin = 517 +    Ieee_Math_Real_Cos = 518 +    Ieee_Math_Real_Arctan = 519 +    Ieee_Math_Real_Pow = 520 +    Ieee_Std_Logic_Unsigned_Add_Slv_Slv = 521 +    Ieee_Std_Logic_Unsigned_Add_Slv_Int = 522 +    Ieee_Std_Logic_Unsigned_Add_Int_Slv = 523 +    Ieee_Std_Logic_Unsigned_Add_Slv_Log = 524 +    Ieee_Std_Logic_Unsigned_Add_Log_Slv = 525 +    Ieee_Std_Logic_Unsigned_Sub_Slv_Slv = 526 +    Ieee_Std_Logic_Unsigned_Sub_Slv_Int = 527 +    Ieee_Std_Logic_Unsigned_Sub_Int_Slv = 528 +    Ieee_Std_Logic_Unsigned_Sub_Slv_Log = 529 +    Ieee_Std_Logic_Unsigned_Sub_Log_Slv = 530 +    Ieee_Std_Logic_Unsigned_Id_Slv = 531 +    Ieee_Std_Logic_Unsigned_Mul_Slv_Slv = 532 +    Ieee_Std_Logic_Unsigned_Lt_Slv_Slv = 533 +    Ieee_Std_Logic_Unsigned_Lt_Slv_Int = 534 +    Ieee_Std_Logic_Unsigned_Lt_Int_Slv = 535 +    Ieee_Std_Logic_Unsigned_Le_Slv_Slv = 536 +    Ieee_Std_Logic_Unsigned_Le_Slv_Int = 537 +    Ieee_Std_Logic_Unsigned_Le_Int_Slv = 538 +    Ieee_Std_Logic_Unsigned_Gt_Slv_Slv = 539 +    Ieee_Std_Logic_Unsigned_Gt_Slv_Int = 540 +    Ieee_Std_Logic_Unsigned_Gt_Int_Slv = 541 +    Ieee_Std_Logic_Unsigned_Ge_Slv_Slv = 542 +    Ieee_Std_Logic_Unsigned_Ge_Slv_Int = 543 +    Ieee_Std_Logic_Unsigned_Ge_Int_Slv = 544 +    Ieee_Std_Logic_Unsigned_Eq_Slv_Slv = 545 +    Ieee_Std_Logic_Unsigned_Eq_Slv_Int = 546 +    Ieee_Std_Logic_Unsigned_Eq_Int_Slv = 547 +    Ieee_Std_Logic_Unsigned_Ne_Slv_Slv = 548 +    Ieee_Std_Logic_Unsigned_Ne_Slv_Int = 549 +    Ieee_Std_Logic_Unsigned_Ne_Int_Slv = 550 +    Ieee_Std_Logic_Unsigned_Conv_Integer = 551 +    Ieee_Std_Logic_Unsigned_Shl = 552 +    Ieee_Std_Logic_Unsigned_Shr = 553 +    Ieee_Std_Logic_Signed_Add_Slv_Slv = 554 +    Ieee_Std_Logic_Signed_Add_Slv_Int = 555 +    Ieee_Std_Logic_Signed_Add_Int_Slv = 556 +    Ieee_Std_Logic_Signed_Add_Slv_Log = 557 +    Ieee_Std_Logic_Signed_Add_Log_Slv = 558 +    Ieee_Std_Logic_Signed_Sub_Slv_Slv = 559 +    Ieee_Std_Logic_Signed_Sub_Slv_Int = 560 +    Ieee_Std_Logic_Signed_Sub_Int_Slv = 561 +    Ieee_Std_Logic_Signed_Sub_Slv_Log = 562 +    Ieee_Std_Logic_Signed_Sub_Log_Slv = 563 +    Ieee_Std_Logic_Signed_Id_Slv = 564 +    Ieee_Std_Logic_Signed_Neg_Slv = 565 +    Ieee_Std_Logic_Signed_Abs_Slv = 566 +    Ieee_Std_Logic_Signed_Mul_Slv_Slv = 567 +    Ieee_Std_Logic_Signed_Lt_Slv_Slv = 568 +    Ieee_Std_Logic_Signed_Lt_Slv_Int = 569 +    Ieee_Std_Logic_Signed_Lt_Int_Slv = 570 +    Ieee_Std_Logic_Signed_Le_Slv_Slv = 571 +    Ieee_Std_Logic_Signed_Le_Slv_Int = 572 +    Ieee_Std_Logic_Signed_Le_Int_Slv = 573 +    Ieee_Std_Logic_Signed_Gt_Slv_Slv = 574 +    Ieee_Std_Logic_Signed_Gt_Slv_Int = 575 +    Ieee_Std_Logic_Signed_Gt_Int_Slv = 576 +    Ieee_Std_Logic_Signed_Ge_Slv_Slv = 577 +    Ieee_Std_Logic_Signed_Ge_Slv_Int = 578 +    Ieee_Std_Logic_Signed_Ge_Int_Slv = 579 +    Ieee_Std_Logic_Signed_Eq_Slv_Slv = 580 +    Ieee_Std_Logic_Signed_Eq_Slv_Int = 581 +    Ieee_Std_Logic_Signed_Eq_Int_Slv = 582 +    Ieee_Std_Logic_Signed_Ne_Slv_Slv = 583 +    Ieee_Std_Logic_Signed_Ne_Slv_Int = 584 +    Ieee_Std_Logic_Signed_Ne_Int_Slv = 585 +    Ieee_Std_Logic_Signed_Conv_Integer = 586 +    Ieee_Std_Logic_Signed_Shl = 587 +    Ieee_Std_Logic_Signed_Shr = 588 +    Ieee_Std_Logic_Arith_Conv_Unsigned_Int = 589 +    Ieee_Std_Logic_Arith_Conv_Unsigned_Uns = 590 +    Ieee_Std_Logic_Arith_Conv_Unsigned_Sgn = 591 +    Ieee_Std_Logic_Arith_Conv_Unsigned_Log = 592 +    Ieee_Std_Logic_Arith_Conv_Integer_Int = 593 +    Ieee_Std_Logic_Arith_Conv_Integer_Uns = 594 +    Ieee_Std_Logic_Arith_Conv_Integer_Sgn = 595 +    Ieee_Std_Logic_Arith_Conv_Integer_Log = 596 +    Ieee_Std_Logic_Arith_Conv_Vector_Int = 597 +    Ieee_Std_Logic_Arith_Conv_Vector_Uns = 598 +    Ieee_Std_Logic_Arith_Conv_Vector_Sgn = 599 +    Ieee_Std_Logic_Arith_Conv_Vector_Log = 600 +    Ieee_Std_Logic_Arith_Ext = 601 +    Ieee_Std_Logic_Arith_Sxt = 602 +    Ieee_Std_Logic_Arith_Id_Uns_Uns = 603 +    Ieee_Std_Logic_Arith_Id_Sgn_Sgn = 604 +    Ieee_Std_Logic_Arith_Neg_Sgn_Sgn = 605 +    Ieee_Std_Logic_Arith_Abs_Sgn_Sgn = 606 +    Ieee_Std_Logic_Arith_Shl_Uns = 607 +    Ieee_Std_Logic_Arith_Shl_Sgn = 608 +    Ieee_Std_Logic_Arith_Shr_Uns = 609 +    Ieee_Std_Logic_Arith_Shr_Sgn = 610 +    Ieee_Std_Logic_Arith_Id_Uns_Slv = 611 +    Ieee_Std_Logic_Arith_Id_Sgn_Slv = 612 +    Ieee_Std_Logic_Arith_Neg_Sgn_Slv = 613 +    Ieee_Std_Logic_Arith_Abs_Sgn_Slv = 614 +    Ieee_Std_Logic_Arith_Mul_Uns_Uns_Uns = 615 +    Ieee_Std_Logic_Arith_Mul_Sgn_Sgn_Sgn = 616 +    Ieee_Std_Logic_Arith_Mul_Sgn_Uns_Sgn = 617 +    Ieee_Std_Logic_Arith_Mul_Uns_Sgn_Sgn = 618 +    Ieee_Std_Logic_Arith_Mul_Uns_Uns_Slv = 619 +    Ieee_Std_Logic_Arith_Mul_Sgn_Sgn_Slv = 620 +    Ieee_Std_Logic_Arith_Mul_Sgn_Uns_Slv = 621 +    Ieee_Std_Logic_Arith_Mul_Uns_Sgn_Slv = 622 +    Ieee_Std_Logic_Arith_Add_Uns_Uns_Uns = 623 +    Ieee_Std_Logic_Arith_Add_Sgn_Sgn_Sgn = 624 +    Ieee_Std_Logic_Arith_Add_Uns_Sgn_Sgn = 625 +    Ieee_Std_Logic_Arith_Add_Sgn_Uns_Sgn = 626 +    Ieee_Std_Logic_Arith_Add_Uns_Int_Uns = 627 +    Ieee_Std_Logic_Arith_Add_Int_Uns_Uns = 628 +    Ieee_Std_Logic_Arith_Add_Sgn_Int_Sgn = 629 +    Ieee_Std_Logic_Arith_Add_Int_Sgn_Sgn = 630 +    Ieee_Std_Logic_Arith_Add_Uns_Log_Uns = 631 +    Ieee_Std_Logic_Arith_Add_Log_Uns_Uns = 632 +    Ieee_Std_Logic_Arith_Add_Sgn_Log_Sgn = 633 +    Ieee_Std_Logic_Arith_Add_Log_Sgn_Sgn = 634 +    Ieee_Std_Logic_Arith_Add_Uns_Uns_Slv = 635 +    Ieee_Std_Logic_Arith_Add_Sgn_Sgn_Slv = 636 +    Ieee_Std_Logic_Arith_Add_Uns_Sgn_Slv = 637 +    Ieee_Std_Logic_Arith_Add_Sgn_Uns_Slv = 638 +    Ieee_Std_Logic_Arith_Add_Uns_Int_Slv = 639 +    Ieee_Std_Logic_Arith_Add_Int_Uns_Slv = 640 +    Ieee_Std_Logic_Arith_Add_Sgn_Int_Slv = 641 +    Ieee_Std_Logic_Arith_Add_Int_Sgn_Slv = 642 +    Ieee_Std_Logic_Arith_Add_Uns_Log_Slv = 643 +    Ieee_Std_Logic_Arith_Add_Log_Uns_Slv = 644 +    Ieee_Std_Logic_Arith_Add_Sgn_Log_Slv = 645 +    Ieee_Std_Logic_Arith_Add_Log_Sgn_Slv = 646 +    Ieee_Std_Logic_Arith_Sub_Uns_Uns_Uns = 647 +    Ieee_Std_Logic_Arith_Sub_Sgn_Sgn_Sgn = 648 +    Ieee_Std_Logic_Arith_Sub_Uns_Sgn_Sgn = 649 +    Ieee_Std_Logic_Arith_Sub_Sgn_Uns_Sgn = 650 +    Ieee_Std_Logic_Arith_Sub_Uns_Int_Uns = 651 +    Ieee_Std_Logic_Arith_Sub_Int_Uns_Uns = 652 +    Ieee_Std_Logic_Arith_Sub_Sgn_Int_Sgn = 653 +    Ieee_Std_Logic_Arith_Sub_Int_Sgn_Sgn = 654 +    Ieee_Std_Logic_Arith_Sub_Uns_Log_Uns = 655 +    Ieee_Std_Logic_Arith_Sub_Log_Uns_Uns = 656 +    Ieee_Std_Logic_Arith_Sub_Sgn_Log_Sgn = 657 +    Ieee_Std_Logic_Arith_Sub_Log_Sgn_Sgn = 658 +    Ieee_Std_Logic_Arith_Sub_Uns_Uns_Slv = 659 +    Ieee_Std_Logic_Arith_Sub_Sgn_Sgn_Slv = 660 +    Ieee_Std_Logic_Arith_Sub_Uns_Sgn_Slv = 661 +    Ieee_Std_Logic_Arith_Sub_Sgn_Uns_Slv = 662 +    Ieee_Std_Logic_Arith_Sub_Uns_Int_Slv = 663 +    Ieee_Std_Logic_Arith_Sub_Int_Uns_Slv = 664 +    Ieee_Std_Logic_Arith_Sub_Sgn_Int_Slv = 665 +    Ieee_Std_Logic_Arith_Sub_Int_Sgn_Slv = 666 +    Ieee_Std_Logic_Arith_Sub_Uns_Log_Slv = 667 +    Ieee_Std_Logic_Arith_Sub_Log_Uns_Slv = 668 +    Ieee_Std_Logic_Arith_Sub_Sgn_Log_Slv = 669 +    Ieee_Std_Logic_Arith_Sub_Log_Sgn_Slv = 670 +    Ieee_Std_Logic_Arith_Lt_Uns_Uns = 671 +    Ieee_Std_Logic_Arith_Lt_Sgn_Sgn = 672 +    Ieee_Std_Logic_Arith_Lt_Uns_Sgn = 673 +    Ieee_Std_Logic_Arith_Lt_Sgn_Uns = 674 +    Ieee_Std_Logic_Arith_Lt_Uns_Int = 675 +    Ieee_Std_Logic_Arith_Lt_Int_Uns = 676 +    Ieee_Std_Logic_Arith_Lt_Sgn_Int = 677 +    Ieee_Std_Logic_Arith_Lt_Int_Sgn = 678 +    Ieee_Std_Logic_Arith_Le_Uns_Uns = 679 +    Ieee_Std_Logic_Arith_Le_Sgn_Sgn = 680 +    Ieee_Std_Logic_Arith_Le_Uns_Sgn = 681 +    Ieee_Std_Logic_Arith_Le_Sgn_Uns = 682 +    Ieee_Std_Logic_Arith_Le_Uns_Int = 683 +    Ieee_Std_Logic_Arith_Le_Int_Uns = 684 +    Ieee_Std_Logic_Arith_Le_Sgn_Int = 685 +    Ieee_Std_Logic_Arith_Le_Int_Sgn = 686 +    Ieee_Std_Logic_Arith_Gt_Uns_Uns = 687 +    Ieee_Std_Logic_Arith_Gt_Sgn_Sgn = 688 +    Ieee_Std_Logic_Arith_Gt_Uns_Sgn = 689 +    Ieee_Std_Logic_Arith_Gt_Sgn_Uns = 690 +    Ieee_Std_Logic_Arith_Gt_Uns_Int = 691 +    Ieee_Std_Logic_Arith_Gt_Int_Uns = 692 +    Ieee_Std_Logic_Arith_Gt_Sgn_Int = 693 +    Ieee_Std_Logic_Arith_Gt_Int_Sgn = 694 +    Ieee_Std_Logic_Arith_Ge_Uns_Uns = 695 +    Ieee_Std_Logic_Arith_Ge_Sgn_Sgn = 696 +    Ieee_Std_Logic_Arith_Ge_Uns_Sgn = 697 +    Ieee_Std_Logic_Arith_Ge_Sgn_Uns = 698 +    Ieee_Std_Logic_Arith_Ge_Uns_Int = 699 +    Ieee_Std_Logic_Arith_Ge_Int_Uns = 700 +    Ieee_Std_Logic_Arith_Ge_Sgn_Int = 701 +    Ieee_Std_Logic_Arith_Ge_Int_Sgn = 702 +    Ieee_Std_Logic_Arith_Eq_Uns_Uns = 703 +    Ieee_Std_Logic_Arith_Eq_Sgn_Sgn = 704 +    Ieee_Std_Logic_Arith_Eq_Uns_Sgn = 705 +    Ieee_Std_Logic_Arith_Eq_Sgn_Uns = 706 +    Ieee_Std_Logic_Arith_Eq_Uns_Int = 707 +    Ieee_Std_Logic_Arith_Eq_Int_Uns = 708 +    Ieee_Std_Logic_Arith_Eq_Sgn_Int = 709 +    Ieee_Std_Logic_Arith_Eq_Int_Sgn = 710 +    Ieee_Std_Logic_Arith_Ne_Uns_Uns = 711 +    Ieee_Std_Logic_Arith_Ne_Sgn_Sgn = 712 +    Ieee_Std_Logic_Arith_Ne_Uns_Sgn = 713 +    Ieee_Std_Logic_Arith_Ne_Sgn_Uns = 714 +    Ieee_Std_Logic_Arith_Ne_Uns_Int = 715 +    Ieee_Std_Logic_Arith_Ne_Int_Uns = 716 +    Ieee_Std_Logic_Arith_Ne_Sgn_Int = 717 +    Ieee_Std_Logic_Arith_Ne_Int_Sgn = 718 +    Ieee_Std_Logic_Misc_And_Reduce_Slv = 719 +    Ieee_Std_Logic_Misc_And_Reduce_Suv = 720 +    Ieee_Std_Logic_Misc_Nand_Reduce_Slv = 721 +    Ieee_Std_Logic_Misc_Nand_Reduce_Suv = 722 +    Ieee_Std_Logic_Misc_Or_Reduce_Slv = 723 +    Ieee_Std_Logic_Misc_Or_Reduce_Suv = 724 +    Ieee_Std_Logic_Misc_Nor_Reduce_Slv = 725 +    Ieee_Std_Logic_Misc_Nor_Reduce_Suv = 726 +    Ieee_Std_Logic_Misc_Xor_Reduce_Slv = 727 +    Ieee_Std_Logic_Misc_Xor_Reduce_Suv = 728 +    Ieee_Std_Logic_Misc_Xnor_Reduce_Slv = 729 +    Ieee_Std_Logic_Misc_Xnor_Reduce_Suv = 730  @export diff --git a/src/vhdl/vhdl-ieee-numeric.adb b/src/vhdl/vhdl-ieee-numeric.adb index b165eb7e9..3a77bd0e8 100644 --- a/src/vhdl/vhdl-ieee-numeric.adb +++ b/src/vhdl/vhdl-ieee-numeric.adb @@ -626,6 +626,14 @@ package body Vhdl.Ieee.Numeric is       (Type_Signed   => Iir_Predefined_Ieee_Numeric_Std_Is_X_Sgn,        Type_Unsigned => Iir_Predefined_Ieee_Numeric_Std_Is_X_Uns); +   To_Hstring_Patterns : constant Shift_Pattern_Type := +     (Type_Signed   => Iir_Predefined_Ieee_Numeric_Std_To_Hstring_Sgn, +      Type_Unsigned => Iir_Predefined_Ieee_Numeric_Std_To_Hstring_Uns); + +   To_Ostring_Patterns : constant Shift_Pattern_Type := +     (Type_Signed   => Iir_Predefined_Ieee_Numeric_Std_To_Ostring_Sgn, +      Type_Unsigned => Iir_Predefined_Ieee_Numeric_Std_To_Ostring_Uns); +     Error : exception;     procedure Extract_Declarations (Pkg_Decl : Iir_Package_Declaration; @@ -1019,10 +1027,6 @@ package body Vhdl.Ieee.Numeric is                          Handle_Binary (Xor_Patterns);                       when Name_Xnor =>                          Handle_Binary (Xnor_Patterns); -                     when Name_To_Bstring -                       | Name_To_Ostring -                       | Name_To_Hstring => -                        null;                       when Name_To_Unsigned =>                          Handle_To_Unsigned;                       when Name_To_Signed => @@ -1091,6 +1095,12 @@ package body Vhdl.Ieee.Numeric is                          Handle_To_X01 (To_Ux01_Patterns);                       when Name_Is_X =>                          Handle_To_X01 (Is_X_Patterns); +                     when Name_To_Bstring => +                        null; +                     when Name_To_Ostring => +                        Handle_To_X01 (To_Ostring_Patterns); +                     when Name_To_Hstring => +                        Handle_To_X01 (To_Hstring_Patterns);                       when others =>                          null;                    end case; diff --git a/src/vhdl/vhdl-ieee-numeric_std_unsigned.adb b/src/vhdl/vhdl-ieee-numeric_std_unsigned.adb index 7d8edbb96..f8c87408b 100644 --- a/src/vhdl/vhdl-ieee-numeric_std_unsigned.adb +++ b/src/vhdl/vhdl-ieee-numeric_std_unsigned.adb @@ -55,10 +55,59 @@ package body Vhdl.Ieee.Numeric_Std_Unsigned is        Classify_Arg (Arg1, Arg1_Kind);        Classify_Arg (Arg2, Arg2_Kind);        case Get_Identifier (Decl) is +         when Name_Op_Plus => +            if Arg1_Kind = Arg_Slv and Arg2_Kind = Arg_Slv then +               Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Add_Slv_Slv; +            elsif Arg1_Kind = Arg_Slv and Arg2_Kind = Arg_Int then +               Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Add_Slv_Nat; +            elsif Arg1_Kind = Arg_Int and Arg2_Kind = Arg_Slv then +               Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Add_Nat_Slv; +            end if; +         when Name_Op_Minus => +            if Arg1_Kind = Arg_Slv and Arg2_Kind = Arg_Slv then +               Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Sub_Slv_Slv; +            elsif Arg1_Kind = Arg_Slv and Arg2_Kind = Arg_Int then +               Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Sub_Slv_Nat; +            elsif Arg1_Kind = Arg_Int and Arg2_Kind = Arg_Slv then +               Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Sub_Nat_Slv; +            end if;           when Name_To_Stdlogicvector =>              if Arg1_Kind = Arg_Int and Arg2_Kind = Arg_Int then -               Res := -                 Iir_Predefined_Ieee_Numeric_Std_Unsigned_To_Slv_Nat_Nat_Slv; +               Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_To_Slv_Nat_Nat; +            elsif Arg1_Kind = Arg_Int and Arg2_Kind = Arg_Slv then +               Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_To_Slv_Nat_Slv; +            end if; +         when Name_Resize => +            if Arg2_Kind = Arg_Int then +               Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Resize_Slv_Nat; +            elsif Arg2_Kind = Arg_Slv then +               Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Resize_Slv_Slv; +            end if; +         when Name_Find_Leftmost => +            pragma Assert (Arg1_Kind = Arg_Slv and Arg2_Kind = Arg_Log); +            Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Find_Leftmost; +         when Name_Find_Rightmost => +            pragma Assert (Arg1_Kind = Arg_Slv and Arg2_Kind = Arg_Log); +            Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Find_Rightmost; +         when Name_Shift_Left => +            pragma Assert (Arg1_Kind = Arg_Slv and Arg2_Kind = Arg_Int); +            Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Shift_Left; +         when Name_Shift_Right => +            pragma Assert (Arg1_Kind = Arg_Slv and Arg2_Kind = Arg_Int); +            Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Shift_Right; +         when Name_Rotate_Left => +            pragma Assert (Arg1_Kind = Arg_Slv and Arg2_Kind = Arg_Int); +            Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Rotate_Left; +         when Name_Rotate_Right => +            pragma Assert (Arg1_Kind = Arg_Slv and Arg2_Kind = Arg_Int); +            Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Rotate_Right; +         when Name_Maximum => +            if Arg1_Kind = Arg_Slv and Arg2_Kind = Arg_Slv then +               Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Maximum_Slv_Slv; +            end if; +         when Name_Minimum => +            if Arg1_Kind = Arg_Slv and Arg2_Kind = Arg_Slv then +               Res := Iir_Predefined_Ieee_Numeric_Std_Unsigned_Minimum_Slv_Slv;              end if;           when others =>              null; diff --git a/src/vhdl/vhdl-ieee-std_logic_1164.adb b/src/vhdl/vhdl-ieee-std_logic_1164.adb index 4b98cf026..ff2d95190 100644 --- a/src/vhdl/vhdl-ieee-std_logic_1164.adb +++ b/src/vhdl/vhdl-ieee-std_logic_1164.adb @@ -369,6 +369,13 @@ package body Vhdl.Ieee.Std_Logic_1164 is                       Predefined :=                         Iir_Predefined_Ieee_1164_To_Stdulogicvector_Bv;                    end if; +               when Name_To_01 => +                  if Is_Suv_Log_Function (Decl) then +                     --  TODO: distinguish slv/suv. +                     Predefined := Iir_Predefined_Ieee_1164_To_01_Slv_Log; +                  elsif Is_Scalar_Scalar_Function (Decl) then +                     Predefined := Iir_Predefined_Ieee_1164_To_01_Log_Log; +                  end if;                 when Name_To_X01 =>                    if Is_Vector_Function (Decl) then                       --  TODO: distinguish slv/suv. diff --git a/src/vhdl/vhdl-nodes.ads b/src/vhdl/vhdl-nodes.ads index 9bf8d137d..c0d344dda 100644 --- a/src/vhdl/vhdl-nodes.ads +++ b/src/vhdl/vhdl-nodes.ads @@ -5704,6 +5704,9 @@ package Vhdl.Nodes is        Iir_Predefined_Ieee_1164_Condition_Operator, +      Iir_Predefined_Ieee_1164_To_01_Log_Log, +      Iir_Predefined_Ieee_1164_To_01_Slv_Log, +        Iir_Predefined_Ieee_1164_To_Hstring,        Iir_Predefined_Ieee_1164_To_Ostring, @@ -5992,6 +5995,12 @@ package Vhdl.Nodes is        Iir_Predefined_Ieee_Numeric_Std_Is_X_Uns,        Iir_Predefined_Ieee_Numeric_Std_Is_X_Sgn, +      Iir_Predefined_Ieee_Numeric_Std_To_Hstring_Uns, +      Iir_Predefined_Ieee_Numeric_Std_To_Ostring_Uns, + +      Iir_Predefined_Ieee_Numeric_Std_To_Hstring_Sgn, +      Iir_Predefined_Ieee_Numeric_Std_To_Ostring_Sgn, +        --  numeric_bit        --  To_Integer, To_Unsigned, to_Signed @@ -6003,8 +6012,33 @@ package Vhdl.Nodes is        Iir_Predefined_Ieee_Numeric_Bit_Tosgn_Int_Sgn_Sgn,        --  Numeric_Std_Unsigned (ieee2008) +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Add_Slv_Slv, +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Add_Slv_Nat, +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Add_Nat_Slv, + +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Sub_Slv_Slv, +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Sub_Slv_Nat, +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Sub_Nat_Slv, + +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Find_Rightmost, +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Find_Leftmost, + +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Shift_Left, +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Shift_Right, + +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Rotate_Left, +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Rotate_Right, +        Iir_Predefined_Ieee_Numeric_Std_Unsigned_To_Integer_Slv_Nat, -      Iir_Predefined_Ieee_Numeric_Std_Unsigned_To_Slv_Nat_Nat_Slv, + +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_To_Slv_Nat_Nat, +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_To_Slv_Nat_Slv, + +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Resize_Slv_Nat, +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Resize_Slv_Slv, + +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Maximum_Slv_Slv, +      Iir_Predefined_Ieee_Numeric_Std_Unsigned_Minimum_Slv_Slv,        --  Math_Real        Iir_Predefined_Ieee_Math_Real_Ceil, @@ -6352,6 +6386,11 @@ package Vhdl.Nodes is         Iir_Predefined_Ieee_Numeric_Std_Add_Uns_Uns ..         Iir_Predefined_Ieee_Numeric_Std_Xnor_Sgn_Sgn; +   subtype Iir_Predefined_Ieee_Numeric_Std_Unsigned_Operators +      is Iir_Predefined_Functions range +     Iir_Predefined_Ieee_Numeric_Std_Unsigned_Add_Slv_Slv .. +     Iir_Predefined_Ieee_Numeric_Std_Unsigned_Sub_Nat_Slv; +     --  Size of scalar types.     --  Their size is determined during analysis (using the range), so that     --  all backends have the same view.  | 
