mcm-gcc-9.4.0.patch (95418B)
1 Only in gcc-9.4.0: .gcc.orig 2 Only in gcc-9.4.0: .libatomic.orig 3 Only in gcc-9.4.0: .libgcc.orig 4 Only in gcc-9.4.0: .libgomp.orig 5 Only in gcc-9.4.0: .libitm.orig 6 Only in gcc-9.4.0: .libstdc++-v3.orig 7 Only in gcc-9.4.0: .libvtv.orig 8 diff -ru gcc-9.4.0.orig/config.sub gcc-9.4.0/config.sub 9 --- gcc-9.4.0.orig/config.sub 2021-06-01 09:53:04.040466358 +0200 10 +++ gcc-9.4.0/config.sub 2023-06-13 00:16:43.440074368 +0200 11 @@ -1,8 +1,8 @@ 12 #! /bin/sh 13 # Configuration validation subroutine script. 14 -# Copyright 1992-2019 Free Software Foundation, Inc. 15 +# Copyright 1992-2016 Free Software Foundation, Inc. 16 17 -timestamp='2019-01-01' 18 +timestamp='2016-03-30' 19 20 # This file is free software; you can redistribute it and/or modify it 21 # under the terms of the GNU General Public License as published by 22 @@ -15,7 +15,7 @@ 23 # General Public License for more details. 24 # 25 # You should have received a copy of the GNU General Public License 26 -# along with this program; if not, see <https://www.gnu.org/licenses/>. 27 +# along with this program; if not, see <http://www.gnu.org/licenses/>. 28 # 29 # As a special exception to the GNU General Public License, if you 30 # distribute this file as part of a program that contains a 31 @@ -33,7 +33,7 @@ 32 # Otherwise, we print the canonical config type on stdout and succeed. 33 34 # You can get the latest version of this script from: 35 -# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub 36 +# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub 37 38 # This file is supposed to be the same for all GNU packages 39 # and recognize all the CPU types, system types and aliases 40 @@ -57,7 +57,7 @@ 41 42 Canonicalize a configuration name. 43 44 -Options: 45 +Operation modes: 46 -h, --help print this help, then exit 47 -t, --time-stamp print date of last modification, then exit 48 -v, --version print version number, then exit 49 @@ -67,7 +67,7 @@ 50 version="\ 51 GNU config.sub ($timestamp) 52 53 -Copyright 1992-2019 Free Software Foundation, Inc. 54 +Copyright 1992-2016 Free Software Foundation, Inc. 55 56 This is free software; see the source for copying conditions. There is NO 57 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 58 @@ -89,12 +89,12 @@ 59 - ) # Use stdin as input. 60 break ;; 61 -* ) 62 - echo "$me: invalid option $1$help" >&2 63 + echo "$me: invalid option $1$help" 64 exit 1 ;; 65 66 *local*) 67 # First pass through any local machine types. 68 - echo "$1" 69 + echo $1 70 exit ;; 71 72 * ) 73 @@ -110,1162 +110,1234 @@ 74 exit 1;; 75 esac 76 77 -# Split fields of configuration type 78 -# shellcheck disable=SC2162 79 -IFS="-" read field1 field2 field3 field4 <<EOF 80 -$1 81 -EOF 82 - 83 -# Separate into logical components for further validation 84 -case $1 in 85 - *-*-*-*-*) 86 - echo Invalid configuration \`"$1"\': more than four components >&2 87 - exit 1 88 +# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). 89 +# Here we must recognize all the valid KERNEL-OS combinations. 90 +maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 91 +case $maybe_os in 92 + nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 93 + linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 94 + knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ 95 + kopensolaris*-gnu* | \ 96 + storm-chaos* | os2-emx* | rtmk-nova*) 97 + os=-$maybe_os 98 + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 99 + ;; 100 + android-linux) 101 + os=-linux-android 102 + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown 103 + ;; 104 + *) 105 + basic_machine=`echo $1 | sed 's/-[^-]*$//'` 106 + if [ $basic_machine != $1 ] 107 + then os=`echo $1 | sed 's/.*-/-/'` 108 + else os=; fi 109 + ;; 110 +esac 111 + 112 +### Let's recognize common machines as not being operating systems so 113 +### that things like config.sub decstation-3100 work. We also 114 +### recognize some manufacturers as not being operating systems, so we 115 +### can provide default operating systems below. 116 +case $os in 117 + -sun*os*) 118 + # Prevent following clause from handling this invalid input. 119 ;; 120 - *-*-*-*) 121 - basic_machine=$field1-$field2 122 - os=$field3-$field4 123 + -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ 124 + -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ 125 + -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ 126 + -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 127 + -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 128 + -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 129 + -apple | -axis | -knuth | -cray | -microblaze*) 130 + os= 131 + basic_machine=$1 132 + ;; 133 + -bluegene*) 134 + os=-cnk 135 + ;; 136 + -sim | -cisco | -oki | -wec | -winbond) 137 + os= 138 + basic_machine=$1 139 + ;; 140 + -scout) 141 + ;; 142 + -wrs) 143 + os=-vxworks 144 + basic_machine=$1 145 + ;; 146 + -chorusos*) 147 + os=-chorusos 148 + basic_machine=$1 149 + ;; 150 + -chorusrdb) 151 + os=-chorusrdb 152 + basic_machine=$1 153 + ;; 154 + -hiux*) 155 + os=-hiuxwe2 156 + ;; 157 + -sco6) 158 + os=-sco5v6 159 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 160 + ;; 161 + -sco5) 162 + os=-sco3.2v5 163 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 164 + ;; 165 + -sco4) 166 + os=-sco3.2v4 167 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 168 ;; 169 - *-*-*) 170 - # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two 171 - # parts 172 - maybe_os=$field2-$field3 173 - case $maybe_os in 174 - nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \ 175 - | linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \ 176 - | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \ 177 - | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \ 178 - | storm-chaos* | os2-emx* | rtmk-nova*) 179 - basic_machine=$field1 180 - os=$maybe_os 181 - ;; 182 - android-linux) 183 - basic_machine=$field1-unknown 184 - os=linux-android 185 - ;; 186 - *) 187 - basic_machine=$field1-$field2 188 - os=$field3 189 - ;; 190 - esac 191 + -sco3.2.[4-9]*) 192 + os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 193 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 194 ;; 195 - *-*) 196 - # A lone config we happen to match not fitting any pattern 197 - case $field1-$field2 in 198 - decstation-3100) 199 - basic_machine=mips-dec 200 - os= 201 - ;; 202 - *-*) 203 - # Second component is usually, but not always the OS 204 - case $field2 in 205 - # Prevent following clause from handling this valid os 206 - sun*os*) 207 - basic_machine=$field1 208 - os=$field2 209 - ;; 210 - # Manufacturers 211 - dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \ 212 - | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \ 213 - | unicom* | ibm* | next | hp | isi* | apollo | altos* \ 214 - | convergent* | ncr* | news | 32* | 3600* | 3100* \ 215 - | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \ 216 - | ultra | tti* | harris | dolphin | highlevel | gould \ 217 - | cbm | ns | masscomp | apple | axis | knuth | cray \ 218 - | microblaze* | sim | cisco \ 219 - | oki | wec | wrs | winbond) 220 - basic_machine=$field1-$field2 221 - os= 222 - ;; 223 - *) 224 - basic_machine=$field1 225 - os=$field2 226 - ;; 227 - esac 228 - ;; 229 - esac 230 + -sco3.2v[4-9]*) 231 + # Don't forget version if it is 3.2v4 or newer. 232 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 233 ;; 234 - *) 235 - # Convert single-component short-hands not valid as part of 236 - # multi-component configurations. 237 - case $field1 in 238 - 386bsd) 239 - basic_machine=i386-pc 240 - os=bsd 241 - ;; 242 - a29khif) 243 - basic_machine=a29k-amd 244 - os=udi 245 - ;; 246 - adobe68k) 247 - basic_machine=m68010-adobe 248 - os=scout 249 - ;; 250 - alliant) 251 - basic_machine=fx80-alliant 252 - os= 253 - ;; 254 - altos | altos3068) 255 - basic_machine=m68k-altos 256 - os= 257 - ;; 258 - am29k) 259 - basic_machine=a29k-none 260 - os=bsd 261 - ;; 262 - amdahl) 263 - basic_machine=580-amdahl 264 - os=sysv 265 - ;; 266 - amiga) 267 - basic_machine=m68k-unknown 268 - os= 269 - ;; 270 - amigaos | amigados) 271 - basic_machine=m68k-unknown 272 - os=amigaos 273 - ;; 274 - amigaunix | amix) 275 - basic_machine=m68k-unknown 276 - os=sysv4 277 - ;; 278 - apollo68) 279 - basic_machine=m68k-apollo 280 - os=sysv 281 - ;; 282 - apollo68bsd) 283 - basic_machine=m68k-apollo 284 - os=bsd 285 - ;; 286 - aros) 287 - basic_machine=i386-pc 288 - os=aros 289 - ;; 290 - aux) 291 - basic_machine=m68k-apple 292 - os=aux 293 - ;; 294 - balance) 295 - basic_machine=ns32k-sequent 296 - os=dynix 297 - ;; 298 - blackfin) 299 - basic_machine=bfin-unknown 300 - os=linux 301 - ;; 302 - cegcc) 303 - basic_machine=arm-unknown 304 - os=cegcc 305 - ;; 306 - convex-c1) 307 - basic_machine=c1-convex 308 - os=bsd 309 - ;; 310 - convex-c2) 311 - basic_machine=c2-convex 312 - os=bsd 313 - ;; 314 - convex-c32) 315 - basic_machine=c32-convex 316 - os=bsd 317 - ;; 318 - convex-c34) 319 - basic_machine=c34-convex 320 - os=bsd 321 - ;; 322 - convex-c38) 323 - basic_machine=c38-convex 324 - os=bsd 325 - ;; 326 - cray) 327 - basic_machine=j90-cray 328 - os=unicos 329 - ;; 330 - crds | unos) 331 - basic_machine=m68k-crds 332 - os= 333 - ;; 334 - da30) 335 - basic_machine=m68k-da30 336 - os= 337 - ;; 338 - decstation | pmax | pmin | dec3100 | decstatn) 339 - basic_machine=mips-dec 340 - os= 341 - ;; 342 - delta88) 343 - basic_machine=m88k-motorola 344 - os=sysv3 345 - ;; 346 - dicos) 347 - basic_machine=i686-pc 348 - os=dicos 349 - ;; 350 - djgpp) 351 - basic_machine=i586-pc 352 - os=msdosdjgpp 353 - ;; 354 - ebmon29k) 355 - basic_machine=a29k-amd 356 - os=ebmon 357 - ;; 358 - es1800 | OSE68k | ose68k | ose | OSE) 359 - basic_machine=m68k-ericsson 360 - os=ose 361 - ;; 362 - gmicro) 363 - basic_machine=tron-gmicro 364 - os=sysv 365 - ;; 366 - go32) 367 - basic_machine=i386-pc 368 - os=go32 369 - ;; 370 - h8300hms) 371 - basic_machine=h8300-hitachi 372 - os=hms 373 - ;; 374 - h8300xray) 375 - basic_machine=h8300-hitachi 376 - os=xray 377 - ;; 378 - h8500hms) 379 - basic_machine=h8500-hitachi 380 - os=hms 381 - ;; 382 - harris) 383 - basic_machine=m88k-harris 384 - os=sysv3 385 - ;; 386 - hp300) 387 - basic_machine=m68k-hp 388 - ;; 389 - hp300bsd) 390 - basic_machine=m68k-hp 391 - os=bsd 392 - ;; 393 - hp300hpux) 394 - basic_machine=m68k-hp 395 - os=hpux 396 - ;; 397 - hppaosf) 398 - basic_machine=hppa1.1-hp 399 - os=osf 400 - ;; 401 - hppro) 402 - basic_machine=hppa1.1-hp 403 - os=proelf 404 - ;; 405 - i386mach) 406 - basic_machine=i386-mach 407 - os=mach 408 - ;; 409 - vsta) 410 - basic_machine=i386-pc 411 - os=vsta 412 - ;; 413 - isi68 | isi) 414 - basic_machine=m68k-isi 415 - os=sysv 416 - ;; 417 - m68knommu) 418 - basic_machine=m68k-unknown 419 - os=linux 420 - ;; 421 - magnum | m3230) 422 - basic_machine=mips-mips 423 - os=sysv 424 - ;; 425 - merlin) 426 - basic_machine=ns32k-utek 427 - os=sysv 428 - ;; 429 - mingw64) 430 - basic_machine=x86_64-pc 431 - os=mingw64 432 - ;; 433 - mingw32) 434 - basic_machine=i686-pc 435 - os=mingw32 436 - ;; 437 - mingw32ce) 438 - basic_machine=arm-unknown 439 - os=mingw32ce 440 - ;; 441 - monitor) 442 - basic_machine=m68k-rom68k 443 - os=coff 444 - ;; 445 - morphos) 446 - basic_machine=powerpc-unknown 447 - os=morphos 448 - ;; 449 - moxiebox) 450 - basic_machine=moxie-unknown 451 - os=moxiebox 452 - ;; 453 - msdos) 454 - basic_machine=i386-pc 455 - os=msdos 456 - ;; 457 - msys) 458 - basic_machine=i686-pc 459 - os=msys 460 - ;; 461 - mvs) 462 - basic_machine=i370-ibm 463 - os=mvs 464 - ;; 465 - nacl) 466 - basic_machine=le32-unknown 467 - os=nacl 468 - ;; 469 - ncr3000) 470 - basic_machine=i486-ncr 471 - os=sysv4 472 - ;; 473 - netbsd386) 474 - basic_machine=i386-pc 475 - os=netbsd 476 - ;; 477 - netwinder) 478 - basic_machine=armv4l-rebel 479 - os=linux 480 - ;; 481 - news | news700 | news800 | news900) 482 - basic_machine=m68k-sony 483 - os=newsos 484 - ;; 485 - news1000) 486 - basic_machine=m68030-sony 487 - os=newsos 488 - ;; 489 - necv70) 490 - basic_machine=v70-nec 491 - os=sysv 492 - ;; 493 - nh3000) 494 - basic_machine=m68k-harris 495 - os=cxux 496 - ;; 497 - nh[45]000) 498 - basic_machine=m88k-harris 499 - os=cxux 500 - ;; 501 - nindy960) 502 - basic_machine=i960-intel 503 - os=nindy 504 - ;; 505 - mon960) 506 - basic_machine=i960-intel 507 - os=mon960 508 - ;; 509 - nonstopux) 510 - basic_machine=mips-compaq 511 - os=nonstopux 512 - ;; 513 - os400) 514 - basic_machine=powerpc-ibm 515 - os=os400 516 - ;; 517 - OSE68000 | ose68000) 518 - basic_machine=m68000-ericsson 519 - os=ose 520 - ;; 521 - os68k) 522 - basic_machine=m68k-none 523 - os=os68k 524 - ;; 525 - paragon) 526 - basic_machine=i860-intel 527 - os=osf 528 - ;; 529 - parisc) 530 - basic_machine=hppa-unknown 531 - os=linux 532 - ;; 533 - pw32) 534 - basic_machine=i586-unknown 535 - os=pw32 536 - ;; 537 - rdos | rdos64) 538 - basic_machine=x86_64-pc 539 - os=rdos 540 - ;; 541 - rdos32) 542 - basic_machine=i386-pc 543 - os=rdos 544 - ;; 545 - rom68k) 546 - basic_machine=m68k-rom68k 547 - os=coff 548 - ;; 549 - sa29200) 550 - basic_machine=a29k-amd 551 - os=udi 552 - ;; 553 - sei) 554 - basic_machine=mips-sei 555 - os=seiux 556 - ;; 557 - sequent) 558 - basic_machine=i386-sequent 559 - os= 560 - ;; 561 - sps7) 562 - basic_machine=m68k-bull 563 - os=sysv2 564 - ;; 565 - st2000) 566 - basic_machine=m68k-tandem 567 - os= 568 - ;; 569 - stratus) 570 - basic_machine=i860-stratus 571 - os=sysv4 572 - ;; 573 - sun2) 574 - basic_machine=m68000-sun 575 - os= 576 - ;; 577 - sun2os3) 578 - basic_machine=m68000-sun 579 - os=sunos3 580 - ;; 581 - sun2os4) 582 - basic_machine=m68000-sun 583 - os=sunos4 584 - ;; 585 - sun3) 586 - basic_machine=m68k-sun 587 - os= 588 - ;; 589 - sun3os3) 590 - basic_machine=m68k-sun 591 - os=sunos3 592 - ;; 593 - sun3os4) 594 - basic_machine=m68k-sun 595 - os=sunos4 596 - ;; 597 - sun4) 598 - basic_machine=sparc-sun 599 - os= 600 - ;; 601 - sun4os3) 602 - basic_machine=sparc-sun 603 - os=sunos3 604 - ;; 605 - sun4os4) 606 - basic_machine=sparc-sun 607 - os=sunos4 608 - ;; 609 - sun4sol2) 610 - basic_machine=sparc-sun 611 - os=solaris2 612 - ;; 613 - sun386 | sun386i | roadrunner) 614 - basic_machine=i386-sun 615 - os= 616 - ;; 617 - sv1) 618 - basic_machine=sv1-cray 619 - os=unicos 620 - ;; 621 - symmetry) 622 - basic_machine=i386-sequent 623 - os=dynix 624 - ;; 625 - t3e) 626 - basic_machine=alphaev5-cray 627 - os=unicos 628 - ;; 629 - t90) 630 - basic_machine=t90-cray 631 - os=unicos 632 - ;; 633 - toad1) 634 - basic_machine=pdp10-xkl 635 - os=tops20 636 - ;; 637 - tpf) 638 - basic_machine=s390x-ibm 639 - os=tpf 640 - ;; 641 - udi29k) 642 - basic_machine=a29k-amd 643 - os=udi 644 - ;; 645 - ultra3) 646 - basic_machine=a29k-nyu 647 - os=sym1 648 - ;; 649 - v810 | necv810) 650 - basic_machine=v810-nec 651 - os=none 652 - ;; 653 - vaxv) 654 - basic_machine=vax-dec 655 - os=sysv 656 - ;; 657 - vms) 658 - basic_machine=vax-dec 659 - os=vms 660 - ;; 661 - vxworks960) 662 - basic_machine=i960-wrs 663 - os=vxworks 664 - ;; 665 - vxworks68) 666 - basic_machine=m68k-wrs 667 - os=vxworks 668 - ;; 669 - vxworks29k) 670 - basic_machine=a29k-wrs 671 - os=vxworks 672 - ;; 673 - xbox) 674 - basic_machine=i686-pc 675 - os=mingw32 676 - ;; 677 - ymp) 678 - basic_machine=ymp-cray 679 - os=unicos 680 - ;; 681 - *) 682 - basic_machine=$1 683 - os= 684 - ;; 685 - esac 686 + -sco5v6*) 687 + # Don't forget version if it is 3.2v4 or newer. 688 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 689 + ;; 690 + -sco*) 691 + os=-sco3.2v2 692 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 693 + ;; 694 + -udk*) 695 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 696 + ;; 697 + -isc) 698 + os=-isc2.2 699 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 700 + ;; 701 + -clix*) 702 + basic_machine=clipper-intergraph 703 + ;; 704 + -isc*) 705 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 706 + ;; 707 + -lynx*178) 708 + os=-lynxos178 709 + ;; 710 + -lynx*5) 711 + os=-lynxos5 712 + ;; 713 + -lynx*) 714 + os=-lynxos 715 + ;; 716 + -ptx*) 717 + basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` 718 + ;; 719 + -windowsnt*) 720 + os=`echo $os | sed -e 's/windowsnt/winnt/'` 721 + ;; 722 + -psos*) 723 + os=-psos 724 + ;; 725 + -mint | -mint[0-9]*) 726 + basic_machine=m68k-atari 727 + os=-mint 728 ;; 729 esac 730 731 -# Decode 1-component or ad-hoc basic machines 732 +# Decode aliases for certain CPU-COMPANY combinations. 733 case $basic_machine in 734 - # Here we handle the default manufacturer of certain CPU types. It is in 735 - # some cases the only manufacturer, in others, it is the most popular. 736 - w89k) 737 - cpu=hppa1.1 738 - vendor=winbond 739 + # Recognize the basic CPU types without company name. 740 + # Some are omitted here because they have special meanings below. 741 + 1750a | 580 \ 742 + | a29k \ 743 + | aarch64 | aarch64_be \ 744 + | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 745 + | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 746 + | am33_2.0 \ 747 + | arc | arceb \ 748 + | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ 749 + | avr | avr32 \ 750 + | ba \ 751 + | be32 | be64 \ 752 + | bfin \ 753 + | c4x | c8051 | clipper \ 754 + | d10v | d30v | dlx | dsp16xx \ 755 + | e2k | epiphany \ 756 + | fido | fr30 | frv | ft32 \ 757 + | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 758 + | hexagon \ 759 + | i370 | i860 | i960 | ia64 \ 760 + | ip2k | iq2000 \ 761 + | k1om \ 762 + | le32 | le64 \ 763 + | lm32 \ 764 + | m32c | m32r | m32rle | m68000 | m68k | m88k \ 765 + | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ 766 + | mips | mipsbe | mipseb | mipsel | mipsle \ 767 + | mips16 \ 768 + | mips64 | mips64el \ 769 + | mips64octeon | mips64octeonel \ 770 + | mips64orion | mips64orionel \ 771 + | mips64r5900 | mips64r5900el \ 772 + | mips64vr | mips64vrel \ 773 + | mips64vr4100 | mips64vr4100el \ 774 + | mips64vr4300 | mips64vr4300el \ 775 + | mips64vr5000 | mips64vr5000el \ 776 + | mips64vr5900 | mips64vr5900el \ 777 + | mipsisa32 | mipsisa32el \ 778 + | mipsisa32r2 | mipsisa32r2el \ 779 + | mipsisa32r6 | mipsisa32r6el \ 780 + | mipsisa64 | mipsisa64el \ 781 + | mipsisa64r2 | mipsisa64r2el \ 782 + | mipsisa64r6 | mipsisa64r6el \ 783 + | mipsisa64sb1 | mipsisa64sb1el \ 784 + | mipsisa64sr71k | mipsisa64sr71kel \ 785 + | mipsr5900 | mipsr5900el \ 786 + | mipstx39 | mipstx39el \ 787 + | mn10200 | mn10300 \ 788 + | moxie \ 789 + | mt \ 790 + | msp430 \ 791 + | nds32 | nds32le | nds32be \ 792 + | nios | nios2 | nios2eb | nios2el \ 793 + | ns16k | ns32k \ 794 + | open8 | or1k | or1knd | or32 \ 795 + | pdp10 | pdp11 | pj | pjl \ 796 + | powerpc | powerpc64 | powerpc64le | powerpcle \ 797 + | pyramid \ 798 + | riscv32 | riscv64 \ 799 + | rl78 | rx \ 800 + | score \ 801 + | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 802 + | sh64 | sh64le \ 803 + | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 804 + | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 805 + | spu \ 806 + | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ 807 + | ubicom32 \ 808 + | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ 809 + | visium \ 810 + | we32k \ 811 + | x86 | xc16x | xstormy16 | xtensa \ 812 + | z8k | z80) 813 + basic_machine=$basic_machine-unknown 814 ;; 815 - op50n) 816 - cpu=hppa1.1 817 - vendor=oki 818 + c54x) 819 + basic_machine=tic54x-unknown 820 ;; 821 - op60c) 822 - cpu=hppa1.1 823 - vendor=oki 824 + c55x) 825 + basic_machine=tic55x-unknown 826 ;; 827 - ibm*) 828 - cpu=i370 829 - vendor=ibm 830 + c6x) 831 + basic_machine=tic6x-unknown 832 ;; 833 - orion105) 834 - cpu=clipper 835 - vendor=highlevel 836 + leon|leon[3-9]) 837 + basic_machine=sparc-$basic_machine 838 ;; 839 - mac | mpw | mac-mpw) 840 - cpu=m68k 841 - vendor=apple 842 + m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) 843 + basic_machine=$basic_machine-unknown 844 + os=-none 845 ;; 846 - pmac | pmac-mpw) 847 - cpu=powerpc 848 - vendor=apple 849 + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 850 + ;; 851 + ms1) 852 + basic_machine=mt-unknown 853 + ;; 854 + 855 + strongarm | thumb | xscale) 856 + basic_machine=arm-unknown 857 + ;; 858 + xgate) 859 + basic_machine=$basic_machine-unknown 860 + os=-none 861 + ;; 862 + xscaleeb) 863 + basic_machine=armeb-unknown 864 + ;; 865 + 866 + xscaleel) 867 + basic_machine=armel-unknown 868 ;; 869 870 + # We use `pc' rather than `unknown' 871 + # because (1) that's what they normally are, and 872 + # (2) the word "unknown" tends to confuse beginning users. 873 + i*86 | x86_64) 874 + basic_machine=$basic_machine-pc 875 + ;; 876 + # Object if more than one company name word. 877 + *-*-*) 878 + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 879 + exit 1 880 + ;; 881 + # Recognize the basic CPU types with company name. 882 + 580-* \ 883 + | a29k-* \ 884 + | aarch64-* | aarch64_be-* \ 885 + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 886 + | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 887 + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ 888 + | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 889 + | avr-* | avr32-* \ 890 + | ba-* \ 891 + | be32-* | be64-* \ 892 + | bfin-* | bs2000-* \ 893 + | c[123]* | c30-* | [cjt]90-* | c4x-* \ 894 + | c8051-* | clipper-* | craynv-* | cydra-* \ 895 + | d10v-* | d30v-* | dlx-* \ 896 + | e2k-* | elxsi-* \ 897 + | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 898 + | h8300-* | h8500-* \ 899 + | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 900 + | hexagon-* \ 901 + | i*86-* | i860-* | i960-* | ia64-* \ 902 + | ip2k-* | iq2000-* \ 903 + | k1om-* \ 904 + | le32-* | le64-* \ 905 + | lm32-* \ 906 + | m32c-* | m32r-* | m32rle-* \ 907 + | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 908 + | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ 909 + | microblaze-* | microblazeel-* \ 910 + | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 911 + | mips16-* \ 912 + | mips64-* | mips64el-* \ 913 + | mips64octeon-* | mips64octeonel-* \ 914 + | mips64orion-* | mips64orionel-* \ 915 + | mips64r5900-* | mips64r5900el-* \ 916 + | mips64vr-* | mips64vrel-* \ 917 + | mips64vr4100-* | mips64vr4100el-* \ 918 + | mips64vr4300-* | mips64vr4300el-* \ 919 + | mips64vr5000-* | mips64vr5000el-* \ 920 + | mips64vr5900-* | mips64vr5900el-* \ 921 + | mipsisa32-* | mipsisa32el-* \ 922 + | mipsisa32r2-* | mipsisa32r2el-* \ 923 + | mipsisa32r6-* | mipsisa32r6el-* \ 924 + | mipsisa64-* | mipsisa64el-* \ 925 + | mipsisa64r2-* | mipsisa64r2el-* \ 926 + | mipsisa64r6-* | mipsisa64r6el-* \ 927 + | mipsisa64sb1-* | mipsisa64sb1el-* \ 928 + | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 929 + | mipsr5900-* | mipsr5900el-* \ 930 + | mipstx39-* | mipstx39el-* \ 931 + | mmix-* \ 932 + | mt-* \ 933 + | msp430-* \ 934 + | nds32-* | nds32le-* | nds32be-* \ 935 + | nios-* | nios2-* | nios2eb-* | nios2el-* \ 936 + | none-* | np1-* | ns16k-* | ns32k-* \ 937 + | open8-* \ 938 + | or1k*-* \ 939 + | orion-* \ 940 + | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 941 + | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 942 + | pyramid-* \ 943 + | riscv32-* | riscv64-* \ 944 + | rl78-* | romp-* | rs6000-* | rx-* \ 945 + | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 946 + | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 947 + | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 948 + | sparclite-* \ 949 + | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ 950 + | tahoe-* \ 951 + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 952 + | tile*-* \ 953 + | tron-* \ 954 + | ubicom32-* \ 955 + | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ 956 + | vax-* \ 957 + | visium-* \ 958 + | we32k-* \ 959 + | x86-* | x86_64-* | xc16x-* | xps100-* \ 960 + | xstormy16-* | xtensa*-* \ 961 + | ymp-* \ 962 + | z8k-* | z80-*) 963 + ;; 964 + # Recognize the basic CPU types without company name, with glob match. 965 + xtensa*) 966 + basic_machine=$basic_machine-unknown 967 + ;; 968 # Recognize the various machine names and aliases which stand 969 # for a CPU type and a company and sometimes even an OS. 970 + 386bsd) 971 + basic_machine=i386-unknown 972 + os=-bsd 973 + ;; 974 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 975 - cpu=m68000 976 - vendor=att 977 + basic_machine=m68000-att 978 ;; 979 3b*) 980 - cpu=we32k 981 - vendor=att 982 + basic_machine=we32k-att 983 + ;; 984 + a29khif) 985 + basic_machine=a29k-amd 986 + os=-udi 987 + ;; 988 + abacus) 989 + basic_machine=abacus-unknown 990 + ;; 991 + adobe68k) 992 + basic_machine=m68010-adobe 993 + os=-scout 994 + ;; 995 + alliant | fx80) 996 + basic_machine=fx80-alliant 997 + ;; 998 + altos | altos3068) 999 + basic_machine=m68k-altos 1000 + ;; 1001 + am29k) 1002 + basic_machine=a29k-none 1003 + os=-bsd 1004 + ;; 1005 + amd64) 1006 + basic_machine=x86_64-pc 1007 + ;; 1008 + amd64-*) 1009 + basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 1010 + ;; 1011 + amdahl) 1012 + basic_machine=580-amdahl 1013 + os=-sysv 1014 + ;; 1015 + amiga | amiga-*) 1016 + basic_machine=m68k-unknown 1017 + ;; 1018 + amigaos | amigados) 1019 + basic_machine=m68k-unknown 1020 + os=-amigaos 1021 + ;; 1022 + amigaunix | amix) 1023 + basic_machine=m68k-unknown 1024 + os=-sysv4 1025 + ;; 1026 + apollo68) 1027 + basic_machine=m68k-apollo 1028 + os=-sysv 1029 + ;; 1030 + apollo68bsd) 1031 + basic_machine=m68k-apollo 1032 + os=-bsd 1033 + ;; 1034 + aros) 1035 + basic_machine=i386-pc 1036 + os=-aros 1037 + ;; 1038 + asmjs) 1039 + basic_machine=asmjs-unknown 1040 + ;; 1041 + aux) 1042 + basic_machine=m68k-apple 1043 + os=-aux 1044 + ;; 1045 + balance) 1046 + basic_machine=ns32k-sequent 1047 + os=-dynix 1048 + ;; 1049 + blackfin) 1050 + basic_machine=bfin-unknown 1051 + os=-linux 1052 + ;; 1053 + blackfin-*) 1054 + basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 1055 + os=-linux 1056 ;; 1057 bluegene*) 1058 - cpu=powerpc 1059 - vendor=ibm 1060 - os=cnk 1061 + basic_machine=powerpc-ibm 1062 + os=-cnk 1063 + ;; 1064 + c54x-*) 1065 + basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 1066 + ;; 1067 + c55x-*) 1068 + basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 1069 + ;; 1070 + c6x-*) 1071 + basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 1072 + ;; 1073 + c90) 1074 + basic_machine=c90-cray 1075 + os=-unicos 1076 + ;; 1077 + cegcc) 1078 + basic_machine=arm-unknown 1079 + os=-cegcc 1080 + ;; 1081 + convex-c1) 1082 + basic_machine=c1-convex 1083 + os=-bsd 1084 + ;; 1085 + convex-c2) 1086 + basic_machine=c2-convex 1087 + os=-bsd 1088 + ;; 1089 + convex-c32) 1090 + basic_machine=c32-convex 1091 + os=-bsd 1092 + ;; 1093 + convex-c34) 1094 + basic_machine=c34-convex 1095 + os=-bsd 1096 + ;; 1097 + convex-c38) 1098 + basic_machine=c38-convex 1099 + os=-bsd 1100 + ;; 1101 + cray | j90) 1102 + basic_machine=j90-cray 1103 + os=-unicos 1104 + ;; 1105 + craynv) 1106 + basic_machine=craynv-cray 1107 + os=-unicosmp 1108 + ;; 1109 + cr16 | cr16-*) 1110 + basic_machine=cr16-unknown 1111 + os=-elf 1112 + ;; 1113 + crds | unos) 1114 + basic_machine=m68k-crds 1115 + ;; 1116 + crisv32 | crisv32-* | etraxfs*) 1117 + basic_machine=crisv32-axis 1118 + ;; 1119 + cris | cris-* | etrax*) 1120 + basic_machine=cris-axis 1121 + ;; 1122 + crx) 1123 + basic_machine=crx-unknown 1124 + os=-elf 1125 + ;; 1126 + da30 | da30-*) 1127 + basic_machine=m68k-da30 1128 + ;; 1129 + decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 1130 + basic_machine=mips-dec 1131 ;; 1132 decsystem10* | dec10*) 1133 - cpu=pdp10 1134 - vendor=dec 1135 - os=tops10 1136 + basic_machine=pdp10-dec 1137 + os=-tops10 1138 ;; 1139 decsystem20* | dec20*) 1140 - cpu=pdp10 1141 - vendor=dec 1142 - os=tops20 1143 + basic_machine=pdp10-dec 1144 + os=-tops20 1145 ;; 1146 delta | 3300 | motorola-3300 | motorola-delta \ 1147 | 3300-motorola | delta-motorola) 1148 - cpu=m68k 1149 - vendor=motorola 1150 + basic_machine=m68k-motorola 1151 + ;; 1152 + delta88) 1153 + basic_machine=m88k-motorola 1154 + os=-sysv3 1155 + ;; 1156 + dicos) 1157 + basic_machine=i686-pc 1158 + os=-dicos 1159 + ;; 1160 + djgpp) 1161 + basic_machine=i586-pc 1162 + os=-msdosdjgpp 1163 + ;; 1164 + dpx20 | dpx20-*) 1165 + basic_machine=rs6000-bull 1166 + os=-bosx 1167 + ;; 1168 + dpx2* | dpx2*-bull) 1169 + basic_machine=m68k-bull 1170 + os=-sysv3 1171 + ;; 1172 + ebmon29k) 1173 + basic_machine=a29k-amd 1174 + os=-ebmon 1175 ;; 1176 - dpx2*) 1177 - cpu=m68k 1178 - vendor=bull 1179 - os=sysv3 1180 + elxsi) 1181 + basic_machine=elxsi-elxsi 1182 + os=-bsd 1183 ;; 1184 encore | umax | mmax) 1185 - cpu=ns32k 1186 - vendor=encore 1187 + basic_machine=ns32k-encore 1188 ;; 1189 - elxsi) 1190 - cpu=elxsi 1191 - vendor=elxsi 1192 - os=${os:-bsd} 1193 + es1800 | OSE68k | ose68k | ose | OSE) 1194 + basic_machine=m68k-ericsson 1195 + os=-ose 1196 ;; 1197 fx2800) 1198 - cpu=i860 1199 - vendor=alliant 1200 + basic_machine=i860-alliant 1201 ;; 1202 genix) 1203 - cpu=ns32k 1204 - vendor=ns 1205 + basic_machine=ns32k-ns 1206 + ;; 1207 + gmicro) 1208 + basic_machine=tron-gmicro 1209 + os=-sysv 1210 + ;; 1211 + go32) 1212 + basic_machine=i386-pc 1213 + os=-go32 1214 ;; 1215 h3050r* | hiux*) 1216 - cpu=hppa1.1 1217 - vendor=hitachi 1218 - os=hiuxwe2 1219 + basic_machine=hppa1.1-hitachi 1220 + os=-hiuxwe2 1221 + ;; 1222 + h8300hms) 1223 + basic_machine=h8300-hitachi 1224 + os=-hms 1225 + ;; 1226 + h8300xray) 1227 + basic_machine=h8300-hitachi 1228 + os=-xray 1229 + ;; 1230 + h8500hms) 1231 + basic_machine=h8500-hitachi 1232 + os=-hms 1233 + ;; 1234 + harris) 1235 + basic_machine=m88k-harris 1236 + os=-sysv3 1237 + ;; 1238 + hp300-*) 1239 + basic_machine=m68k-hp 1240 + ;; 1241 + hp300bsd) 1242 + basic_machine=m68k-hp 1243 + os=-bsd 1244 + ;; 1245 + hp300hpux) 1246 + basic_machine=m68k-hp 1247 + os=-hpux 1248 ;; 1249 hp3k9[0-9][0-9] | hp9[0-9][0-9]) 1250 - cpu=hppa1.0 1251 - vendor=hp 1252 + basic_machine=hppa1.0-hp 1253 ;; 1254 hp9k2[0-9][0-9] | hp9k31[0-9]) 1255 - cpu=m68000 1256 - vendor=hp 1257 + basic_machine=m68000-hp 1258 ;; 1259 hp9k3[2-9][0-9]) 1260 - cpu=m68k 1261 - vendor=hp 1262 + basic_machine=m68k-hp 1263 ;; 1264 hp9k6[0-9][0-9] | hp6[0-9][0-9]) 1265 - cpu=hppa1.0 1266 - vendor=hp 1267 + basic_machine=hppa1.0-hp 1268 ;; 1269 hp9k7[0-79][0-9] | hp7[0-79][0-9]) 1270 - cpu=hppa1.1 1271 - vendor=hp 1272 + basic_machine=hppa1.1-hp 1273 ;; 1274 hp9k78[0-9] | hp78[0-9]) 1275 # FIXME: really hppa2.0-hp 1276 - cpu=hppa1.1 1277 - vendor=hp 1278 + basic_machine=hppa1.1-hp 1279 ;; 1280 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 1281 # FIXME: really hppa2.0-hp 1282 - cpu=hppa1.1 1283 - vendor=hp 1284 + basic_machine=hppa1.1-hp 1285 ;; 1286 hp9k8[0-9][13679] | hp8[0-9][13679]) 1287 - cpu=hppa1.1 1288 - vendor=hp 1289 + basic_machine=hppa1.1-hp 1290 ;; 1291 hp9k8[0-9][0-9] | hp8[0-9][0-9]) 1292 - cpu=hppa1.0 1293 - vendor=hp 1294 + basic_machine=hppa1.0-hp 1295 + ;; 1296 + hppa-next) 1297 + os=-nextstep3 1298 + ;; 1299 + hppaosf) 1300 + basic_machine=hppa1.1-hp 1301 + os=-osf 1302 + ;; 1303 + hppro) 1304 + basic_machine=hppa1.1-hp 1305 + os=-proelf 1306 + ;; 1307 + i370-ibm* | ibm*) 1308 + basic_machine=i370-ibm 1309 ;; 1310 i*86v32) 1311 - cpu=`echo "$1" | sed -e 's/86.*/86/'` 1312 - vendor=pc 1313 - os=sysv32 1314 + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 1315 + os=-sysv32 1316 ;; 1317 i*86v4*) 1318 - cpu=`echo "$1" | sed -e 's/86.*/86/'` 1319 - vendor=pc 1320 - os=sysv4 1321 + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 1322 + os=-sysv4 1323 ;; 1324 i*86v) 1325 - cpu=`echo "$1" | sed -e 's/86.*/86/'` 1326 - vendor=pc 1327 - os=sysv 1328 + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 1329 + os=-sysv 1330 ;; 1331 i*86sol2) 1332 - cpu=`echo "$1" | sed -e 's/86.*/86/'` 1333 - vendor=pc 1334 - os=solaris2 1335 - ;; 1336 - j90 | j90-cray) 1337 - cpu=j90 1338 - vendor=cray 1339 - os=${os:-unicos} 1340 + basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 1341 + os=-solaris2 1342 + ;; 1343 + i386mach) 1344 + basic_machine=i386-mach 1345 + os=-mach 1346 + ;; 1347 + i386-vsta | vsta) 1348 + basic_machine=i386-unknown 1349 + os=-vsta 1350 ;; 1351 iris | iris4d) 1352 - cpu=mips 1353 - vendor=sgi 1354 + basic_machine=mips-sgi 1355 case $os in 1356 - irix*) 1357 + -irix*) 1358 ;; 1359 *) 1360 - os=irix4 1361 + os=-irix4 1362 ;; 1363 esac 1364 ;; 1365 + isi68 | isi) 1366 + basic_machine=m68k-isi 1367 + os=-sysv 1368 + ;; 1369 + leon-*|leon[3-9]-*) 1370 + basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` 1371 + ;; 1372 + m68knommu) 1373 + basic_machine=m68k-unknown 1374 + os=-linux 1375 + ;; 1376 + m68knommu-*) 1377 + basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 1378 + os=-linux 1379 + ;; 1380 + m88k-omron*) 1381 + basic_machine=m88k-omron 1382 + ;; 1383 + magnum | m3230) 1384 + basic_machine=mips-mips 1385 + os=-sysv 1386 + ;; 1387 + merlin) 1388 + basic_machine=ns32k-utek 1389 + os=-sysv 1390 + ;; 1391 + microblaze*) 1392 + basic_machine=microblaze-xilinx 1393 + ;; 1394 + mingw64) 1395 + basic_machine=x86_64-pc 1396 + os=-mingw64 1397 + ;; 1398 + mingw32) 1399 + basic_machine=i686-pc 1400 + os=-mingw32 1401 + ;; 1402 + mingw32ce) 1403 + basic_machine=arm-unknown 1404 + os=-mingw32ce 1405 + ;; 1406 miniframe) 1407 - cpu=m68000 1408 - vendor=convergent 1409 + basic_machine=m68000-convergent 1410 ;; 1411 - *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*) 1412 - cpu=m68k 1413 - vendor=atari 1414 - os=mint 1415 + *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 1416 + basic_machine=m68k-atari 1417 + os=-mint 1418 + ;; 1419 + mips3*-*) 1420 + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 1421 + ;; 1422 + mips3*) 1423 + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 1424 + ;; 1425 + monitor) 1426 + basic_machine=m68k-rom68k 1427 + os=-coff 1428 + ;; 1429 + morphos) 1430 + basic_machine=powerpc-unknown 1431 + os=-morphos 1432 + ;; 1433 + moxiebox) 1434 + basic_machine=moxie-unknown 1435 + os=-moxiebox 1436 + ;; 1437 + msdos) 1438 + basic_machine=i386-pc 1439 + os=-msdos 1440 + ;; 1441 + ms1-*) 1442 + basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 1443 + ;; 1444 + msys) 1445 + basic_machine=i686-pc 1446 + os=-msys 1447 + ;; 1448 + mvs) 1449 + basic_machine=i370-ibm 1450 + os=-mvs 1451 + ;; 1452 + nacl) 1453 + basic_machine=le32-unknown 1454 + os=-nacl 1455 + ;; 1456 + ncr3000) 1457 + basic_machine=i486-ncr 1458 + os=-sysv4 1459 + ;; 1460 + netbsd386) 1461 + basic_machine=i386-unknown 1462 + os=-netbsd 1463 + ;; 1464 + netwinder) 1465 + basic_machine=armv4l-rebel 1466 + os=-linux 1467 + ;; 1468 + news | news700 | news800 | news900) 1469 + basic_machine=m68k-sony 1470 + os=-newsos 1471 + ;; 1472 + news1000) 1473 + basic_machine=m68030-sony 1474 + os=-newsos 1475 ;; 1476 news-3600 | risc-news) 1477 - cpu=mips 1478 - vendor=sony 1479 - os=newsos 1480 - ;; 1481 - next | m*-next) 1482 - cpu=m68k 1483 - vendor=next 1484 + basic_machine=mips-sony 1485 + os=-newsos 1486 + ;; 1487 + necv70) 1488 + basic_machine=v70-nec 1489 + os=-sysv 1490 + ;; 1491 + next | m*-next ) 1492 + basic_machine=m68k-next 1493 case $os in 1494 - nextstep* ) 1495 + -nextstep* ) 1496 ;; 1497 - ns2*) 1498 - os=nextstep2 1499 + -ns2*) 1500 + os=-nextstep2 1501 ;; 1502 *) 1503 - os=nextstep3 1504 + os=-nextstep3 1505 ;; 1506 esac 1507 ;; 1508 + nh3000) 1509 + basic_machine=m68k-harris 1510 + os=-cxux 1511 + ;; 1512 + nh[45]000) 1513 + basic_machine=m88k-harris 1514 + os=-cxux 1515 + ;; 1516 + nindy960) 1517 + basic_machine=i960-intel 1518 + os=-nindy 1519 + ;; 1520 + mon960) 1521 + basic_machine=i960-intel 1522 + os=-mon960 1523 + ;; 1524 + nonstopux) 1525 + basic_machine=mips-compaq 1526 + os=-nonstopux 1527 + ;; 1528 np1) 1529 - cpu=np1 1530 - vendor=gould 1531 + basic_machine=np1-gould 1532 + ;; 1533 + neo-tandem) 1534 + basic_machine=neo-tandem 1535 + ;; 1536 + nse-tandem) 1537 + basic_machine=nse-tandem 1538 + ;; 1539 + nsr-tandem) 1540 + basic_machine=nsr-tandem 1541 ;; 1542 op50n-* | op60c-*) 1543 - cpu=hppa1.1 1544 - vendor=oki 1545 - os=proelf 1546 + basic_machine=hppa1.1-oki 1547 + os=-proelf 1548 + ;; 1549 + openrisc | openrisc-*) 1550 + basic_machine=or32-unknown 1551 + ;; 1552 + os400) 1553 + basic_machine=powerpc-ibm 1554 + os=-os400 1555 + ;; 1556 + OSE68000 | ose68000) 1557 + basic_machine=m68000-ericsson 1558 + os=-ose 1559 + ;; 1560 + os68k) 1561 + basic_machine=m68k-none 1562 + os=-os68k 1563 ;; 1564 pa-hitachi) 1565 - cpu=hppa1.1 1566 - vendor=hitachi 1567 - os=hiuxwe2 1568 + basic_machine=hppa1.1-hitachi 1569 + os=-hiuxwe2 1570 + ;; 1571 + paragon) 1572 + basic_machine=i860-intel 1573 + os=-osf 1574 + ;; 1575 + parisc) 1576 + basic_machine=hppa-unknown 1577 + os=-linux 1578 + ;; 1579 + parisc-*) 1580 + basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 1581 + os=-linux 1582 ;; 1583 pbd) 1584 - cpu=sparc 1585 - vendor=tti 1586 + basic_machine=sparc-tti 1587 ;; 1588 pbb) 1589 - cpu=m68k 1590 - vendor=tti 1591 + basic_machine=m68k-tti 1592 ;; 1593 - pc532) 1594 - cpu=ns32k 1595 - vendor=pc532 1596 + pc532 | pc532-*) 1597 + basic_machine=ns32k-pc532 1598 ;; 1599 - pn) 1600 - cpu=pn 1601 - vendor=gould 1602 + pc98) 1603 + basic_machine=i386-pc 1604 ;; 1605 - power) 1606 - cpu=power 1607 - vendor=ibm 1608 + pc98-*) 1609 + basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 1610 ;; 1611 - ps2) 1612 - cpu=i386 1613 - vendor=ibm 1614 + pentium | p5 | k5 | k6 | nexgen | viac3) 1615 + basic_machine=i586-pc 1616 ;; 1617 - rm[46]00) 1618 - cpu=mips 1619 - vendor=siemens 1620 + pentiumpro | p6 | 6x86 | athlon | athlon_*) 1621 + basic_machine=i686-pc 1622 ;; 1623 - rtpc | rtpc-*) 1624 - cpu=romp 1625 - vendor=ibm 1626 + pentiumii | pentium2 | pentiumiii | pentium3) 1627 + basic_machine=i686-pc 1628 ;; 1629 - sde) 1630 - cpu=mipsisa32 1631 - vendor=sde 1632 - os=${os:-elf} 1633 - ;; 1634 - simso-wrs) 1635 - cpu=sparclite 1636 - vendor=wrs 1637 - os=vxworks 1638 + pentium4) 1639 + basic_machine=i786-pc 1640 ;; 1641 - tower | tower-32) 1642 - cpu=m68k 1643 - vendor=ncr 1644 + pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 1645 + basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 1646 ;; 1647 - vpp*|vx|vx-*) 1648 - cpu=f301 1649 - vendor=fujitsu 1650 + pentiumpro-* | p6-* | 6x86-* | athlon-*) 1651 + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 1652 ;; 1653 - w65) 1654 - cpu=w65 1655 - vendor=wdc 1656 + pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 1657 + basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 1658 ;; 1659 - w89k-*) 1660 - cpu=hppa1.1 1661 - vendor=winbond 1662 - os=proelf 1663 + pentium4-*) 1664 + basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 1665 ;; 1666 - none) 1667 - cpu=none 1668 - vendor=none 1669 + pn) 1670 + basic_machine=pn-gould 1671 ;; 1672 - leon|leon[3-9]) 1673 - cpu=sparc 1674 - vendor=$basic_machine 1675 + power) basic_machine=power-ibm 1676 ;; 1677 - leon-*|leon[3-9]-*) 1678 - cpu=sparc 1679 - vendor=`echo "$basic_machine" | sed 's/-.*//'` 1680 + ppc | ppcbe) basic_machine=powerpc-unknown 1681 ;; 1682 - 1683 - *-*) 1684 - # shellcheck disable=SC2162 1685 - IFS="-" read cpu vendor <<EOF 1686 -$basic_machine 1687 -EOF 1688 + ppc-* | ppcbe-*) 1689 + basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 1690 ;; 1691 - # We use `pc' rather than `unknown' 1692 - # because (1) that's what they normally are, and 1693 - # (2) the word "unknown" tends to confuse beginning users. 1694 - i*86 | x86_64) 1695 - cpu=$basic_machine 1696 - vendor=pc 1697 + ppcle | powerpclittle | ppc-le | powerpc-little) 1698 + basic_machine=powerpcle-unknown 1699 ;; 1700 - # These rules are duplicated from below for sake of the special case above; 1701 - # i.e. things that normalized to x86 arches should also default to "pc" 1702 - pc98) 1703 - cpu=i386 1704 - vendor=pc 1705 + ppcle-* | powerpclittle-*) 1706 + basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 1707 ;; 1708 - x64 | amd64) 1709 - cpu=x86_64 1710 - vendor=pc 1711 + ppc64) basic_machine=powerpc64-unknown 1712 ;; 1713 - # Recognize the basic CPU types without company name. 1714 - *) 1715 - cpu=$basic_machine 1716 - vendor=unknown 1717 + ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 1718 ;; 1719 -esac 1720 - 1721 -unset -v basic_machine 1722 - 1723 -# Decode basic machines in the full and proper CPU-Company form. 1724 -case $cpu-$vendor in 1725 - # Here we handle the default manufacturer of certain CPU types in canonical form. It is in 1726 - # some cases the only manufacturer, in others, it is the most popular. 1727 - craynv-unknown) 1728 - vendor=cray 1729 - os=${os:-unicosmp} 1730 + ppc64le | powerpc64little | ppc64-le | powerpc64-little) 1731 + basic_machine=powerpc64le-unknown 1732 ;; 1733 - c90-unknown | c90-cray) 1734 - vendor=cray 1735 - os=${os:-unicos} 1736 + ppc64le-* | powerpc64little-*) 1737 + basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 1738 ;; 1739 - fx80-unknown) 1740 - vendor=alliant 1741 + ps2) 1742 + basic_machine=i386-ibm 1743 ;; 1744 - romp-unknown) 1745 - vendor=ibm 1746 + pw32) 1747 + basic_machine=i586-unknown 1748 + os=-pw32 1749 + ;; 1750 + rdos | rdos64) 1751 + basic_machine=x86_64-pc 1752 + os=-rdos 1753 + ;; 1754 + rdos32) 1755 + basic_machine=i386-pc 1756 + os=-rdos 1757 + ;; 1758 + rom68k) 1759 + basic_machine=m68k-rom68k 1760 + os=-coff 1761 ;; 1762 - mmix-unknown) 1763 - vendor=knuth 1764 + rm[46]00) 1765 + basic_machine=mips-siemens 1766 ;; 1767 - microblaze-unknown | microblazeel-unknown) 1768 - vendor=xilinx 1769 + rtpc | rtpc-*) 1770 + basic_machine=romp-ibm 1771 ;; 1772 - rs6000-unknown) 1773 - vendor=ibm 1774 + s390 | s390-*) 1775 + basic_machine=s390-ibm 1776 ;; 1777 - vax-unknown) 1778 - vendor=dec 1779 + s390x | s390x-*) 1780 + basic_machine=s390x-ibm 1781 ;; 1782 - pdp11-unknown) 1783 - vendor=dec 1784 + sa29200) 1785 + basic_machine=a29k-amd 1786 + os=-udi 1787 ;; 1788 - we32k-unknown) 1789 - vendor=att 1790 + sb1) 1791 + basic_machine=mipsisa64sb1-unknown 1792 ;; 1793 - cydra-unknown) 1794 - vendor=cydrome 1795 + sb1el) 1796 + basic_machine=mipsisa64sb1el-unknown 1797 ;; 1798 - i370-ibm*) 1799 - vendor=ibm 1800 + sde) 1801 + basic_machine=mipsisa32-sde 1802 + os=-elf 1803 ;; 1804 - orion-unknown) 1805 - vendor=highlevel 1806 + sei) 1807 + basic_machine=mips-sei 1808 + os=-seiux 1809 ;; 1810 - xps-unknown | xps100-unknown) 1811 - cpu=xps100 1812 - vendor=honeywell 1813 + sequent) 1814 + basic_machine=i386-sequent 1815 ;; 1816 - 1817 - # Here we normalize CPU types with a missing or matching vendor 1818 - dpx20-unknown | dpx20-bull) 1819 - cpu=rs6000 1820 - vendor=bull 1821 - os=${os:-bosx} 1822 + sh) 1823 + basic_machine=sh-hitachi 1824 + os=-hms 1825 ;; 1826 - 1827 - # Here we normalize CPU types irrespective of the vendor 1828 - amd64-*) 1829 - cpu=x86_64 1830 + sh5el) 1831 + basic_machine=sh5le-unknown 1832 ;; 1833 - blackfin-*) 1834 - cpu=bfin 1835 - os=linux 1836 + sh64) 1837 + basic_machine=sh64-unknown 1838 ;; 1839 - c54x-*) 1840 - cpu=tic54x 1841 + sparclite-wrs | simso-wrs) 1842 + basic_machine=sparclite-wrs 1843 + os=-vxworks 1844 ;; 1845 - c55x-*) 1846 - cpu=tic55x 1847 + sps7) 1848 + basic_machine=m68k-bull 1849 + os=-sysv2 1850 ;; 1851 - c6x-*) 1852 - cpu=tic6x 1853 + spur) 1854 + basic_machine=spur-unknown 1855 ;; 1856 - e500v[12]-*) 1857 - cpu=powerpc 1858 - os=$os"spe" 1859 + st2000) 1860 + basic_machine=m68k-tandem 1861 ;; 1862 - mips3*-*) 1863 - cpu=mips64 1864 + stratus) 1865 + basic_machine=i860-stratus 1866 + os=-sysv4 1867 ;; 1868 - ms1-*) 1869 - cpu=mt 1870 + strongarm-* | thumb-*) 1871 + basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1872 ;; 1873 - m68knommu-*) 1874 - cpu=m68k 1875 - os=linux 1876 + sun2) 1877 + basic_machine=m68000-sun 1878 ;; 1879 - m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*) 1880 - cpu=s12z 1881 + sun2os3) 1882 + basic_machine=m68000-sun 1883 + os=-sunos3 1884 ;; 1885 - openrisc-*) 1886 - cpu=or32 1887 + sun2os4) 1888 + basic_machine=m68000-sun 1889 + os=-sunos4 1890 ;; 1891 - parisc-*) 1892 - cpu=hppa 1893 - os=linux 1894 + sun3os3) 1895 + basic_machine=m68k-sun 1896 + os=-sunos3 1897 ;; 1898 - pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 1899 - cpu=i586 1900 + sun3os4) 1901 + basic_machine=m68k-sun 1902 + os=-sunos4 1903 ;; 1904 - pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*) 1905 - cpu=i686 1906 + sun4os3) 1907 + basic_machine=sparc-sun 1908 + os=-sunos3 1909 ;; 1910 - pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 1911 - cpu=i686 1912 + sun4os4) 1913 + basic_machine=sparc-sun 1914 + os=-sunos4 1915 ;; 1916 - pentium4-*) 1917 - cpu=i786 1918 + sun4sol2) 1919 + basic_machine=sparc-sun 1920 + os=-solaris2 1921 ;; 1922 - pc98-*) 1923 - cpu=i386 1924 + sun3 | sun3-*) 1925 + basic_machine=m68k-sun 1926 ;; 1927 - ppc-* | ppcbe-*) 1928 - cpu=powerpc 1929 + sun4) 1930 + basic_machine=sparc-sun 1931 ;; 1932 - ppcle-* | powerpclittle-*) 1933 - cpu=powerpcle 1934 + sun386 | sun386i | roadrunner) 1935 + basic_machine=i386-sun 1936 ;; 1937 - ppc64-*) 1938 - cpu=powerpc64 1939 + sv1) 1940 + basic_machine=sv1-cray 1941 + os=-unicos 1942 ;; 1943 - ppc64le-* | powerpc64little-*) 1944 - cpu=powerpc64le 1945 + symmetry) 1946 + basic_machine=i386-sequent 1947 + os=-dynix 1948 ;; 1949 - sb1-*) 1950 - cpu=mipsisa64sb1 1951 + t3e) 1952 + basic_machine=alphaev5-cray 1953 + os=-unicos 1954 ;; 1955 - sb1el-*) 1956 - cpu=mipsisa64sb1el 1957 + t90) 1958 + basic_machine=t90-cray 1959 + os=-unicos 1960 ;; 1961 - sh5e[lb]-*) 1962 - cpu=`echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/'` 1963 + tile*) 1964 + basic_machine=$basic_machine-unknown 1965 + os=-linux-gnu 1966 ;; 1967 - spur-*) 1968 - cpu=spur 1969 + tx39) 1970 + basic_machine=mipstx39-unknown 1971 ;; 1972 - strongarm-* | thumb-*) 1973 - cpu=arm 1974 + tx39el) 1975 + basic_machine=mipstx39el-unknown 1976 + ;; 1977 + toad1) 1978 + basic_machine=pdp10-xkl 1979 + os=-tops20 1980 + ;; 1981 + tower | tower-32) 1982 + basic_machine=m68k-ncr 1983 + ;; 1984 + tpf) 1985 + basic_machine=s390x-ibm 1986 + os=-tpf 1987 + ;; 1988 + udi29k) 1989 + basic_machine=a29k-amd 1990 + os=-udi 1991 + ;; 1992 + ultra3) 1993 + basic_machine=a29k-nyu 1994 + os=-sym1 1995 + ;; 1996 + v810 | necv810) 1997 + basic_machine=v810-nec 1998 + os=-none 1999 + ;; 2000 + vaxv) 2001 + basic_machine=vax-dec 2002 + os=-sysv 2003 + ;; 2004 + vms) 2005 + basic_machine=vax-dec 2006 + os=-vms 2007 ;; 2008 - tx39-*) 2009 - cpu=mipstx39 2010 + vpp*|vx|vx-*) 2011 + basic_machine=f301-fujitsu 2012 ;; 2013 - tx39el-*) 2014 - cpu=mipstx39el 2015 + vxworks960) 2016 + basic_machine=i960-wrs 2017 + os=-vxworks 2018 + ;; 2019 + vxworks68) 2020 + basic_machine=m68k-wrs 2021 + os=-vxworks 2022 + ;; 2023 + vxworks29k) 2024 + basic_machine=a29k-wrs 2025 + os=-vxworks 2026 + ;; 2027 + w65*) 2028 + basic_machine=w65-wdc 2029 + os=-none 2030 ;; 2031 - x64-*) 2032 - cpu=x86_64 2033 + w89k-*) 2034 + basic_machine=hppa1.1-winbond 2035 + os=-proelf 2036 + ;; 2037 + xbox) 2038 + basic_machine=i686-pc 2039 + os=-mingw32 2040 + ;; 2041 + xps | xps100) 2042 + basic_machine=xps100-honeywell 2043 ;; 2044 xscale-* | xscalee[bl]-*) 2045 - cpu=`echo "$cpu" | sed 's/^xscale/arm/'` 2046 + basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 2047 + ;; 2048 + ymp) 2049 + basic_machine=ymp-cray 2050 + os=-unicos 2051 + ;; 2052 + z8k-*-coff) 2053 + basic_machine=z8k-unknown 2054 + os=-sim 2055 + ;; 2056 + z80-*-coff) 2057 + basic_machine=z80-unknown 2058 + os=-sim 2059 + ;; 2060 + none) 2061 + basic_machine=none-none 2062 + os=-none 2063 ;; 2064 2065 - # Recognize the canonical CPU Types that limit and/or modify the 2066 - # company names they are paired with. 2067 - cr16-*) 2068 - os=${os:-elf} 2069 +# Here we handle the default manufacturer of certain CPU types. It is in 2070 +# some cases the only manufacturer, in others, it is the most popular. 2071 + w89k) 2072 + basic_machine=hppa1.1-winbond 2073 ;; 2074 - crisv32-* | etraxfs*-*) 2075 - cpu=crisv32 2076 - vendor=axis 2077 + op50n) 2078 + basic_machine=hppa1.1-oki 2079 ;; 2080 - cris-* | etrax*-*) 2081 - cpu=cris 2082 - vendor=axis 2083 + op60c) 2084 + basic_machine=hppa1.1-oki 2085 ;; 2086 - crx-*) 2087 - os=${os:-elf} 2088 + romp) 2089 + basic_machine=romp-ibm 2090 ;; 2091 - neo-tandem) 2092 - cpu=neo 2093 - vendor=tandem 2094 + mmix) 2095 + basic_machine=mmix-knuth 2096 ;; 2097 - nse-tandem) 2098 - cpu=nse 2099 - vendor=tandem 2100 + rs6000) 2101 + basic_machine=rs6000-ibm 2102 ;; 2103 - nsr-tandem) 2104 - cpu=nsr 2105 - vendor=tandem 2106 + vax) 2107 + basic_machine=vax-dec 2108 ;; 2109 - nsv-tandem) 2110 - cpu=nsv 2111 - vendor=tandem 2112 - ;; 2113 - nsx-tandem) 2114 - cpu=nsx 2115 - vendor=tandem 2116 - ;; 2117 - s390-*) 2118 - cpu=s390 2119 - vendor=ibm 2120 - ;; 2121 - s390x-*) 2122 - cpu=s390x 2123 - vendor=ibm 2124 + pdp10) 2125 + # there are many clones, so DEC is not a safe bet 2126 + basic_machine=pdp10-unknown 2127 ;; 2128 - tile*-*) 2129 - os=${os:-linux-gnu} 2130 + pdp11) 2131 + basic_machine=pdp11-dec 2132 + ;; 2133 + we32k) 2134 + basic_machine=we32k-att 2135 + ;; 2136 + sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 2137 + basic_machine=sh-unknown 2138 + ;; 2139 + sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 2140 + basic_machine=sparc-sun 2141 + ;; 2142 + cydra) 2143 + basic_machine=cydra-cydrome 2144 + ;; 2145 + orion) 2146 + basic_machine=orion-highlevel 2147 + ;; 2148 + orion105) 2149 + basic_machine=clipper-highlevel 2150 + ;; 2151 + mac | mpw | mac-mpw) 2152 + basic_machine=m68k-apple 2153 + ;; 2154 + pmac | pmac-mpw) 2155 + basic_machine=powerpc-apple 2156 + ;; 2157 + *-unknown) 2158 + # Make sure to match an already-canonicalized machine name. 2159 ;; 2160 - 2161 *) 2162 - # Recognize the canonical CPU types that are allowed with any 2163 - # company name. 2164 - case $cpu in 2165 - 1750a | 580 \ 2166 - | a29k \ 2167 - | aarch64 | aarch64_be \ 2168 - | abacus \ 2169 - | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \ 2170 - | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \ 2171 - | alphapca5[67] | alpha64pca5[67] \ 2172 - | am33_2.0 \ 2173 - | amdgcn \ 2174 - | arc | arceb \ 2175 - | arm | arm[lb]e | arme[lb] | armv* \ 2176 - | avr | avr32 \ 2177 - | asmjs \ 2178 - | ba \ 2179 - | be32 | be64 \ 2180 - | bfin | bs2000 \ 2181 - | c[123]* | c30 | [cjt]90 | c4x \ 2182 - | c8051 | clipper | craynv | csky | cydra \ 2183 - | d10v | d30v | dlx | dsp16xx \ 2184 - | e2k | elxsi | epiphany \ 2185 - | f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \ 2186 - | h8300 | h8500 \ 2187 - | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ 2188 - | hexagon \ 2189 - | i370 | i*86 | i860 | i960 | ia16 | ia64 \ 2190 - | ip2k | iq2000 \ 2191 - | k1om \ 2192 - | le32 | le64 \ 2193 - | lm32 \ 2194 - | m32c | m32r | m32rle \ 2195 - | m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k | v70 | w65 \ 2196 - | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip \ 2197 - | m88110 | m88k | maxq | mb | mcore | mep | metag \ 2198 - | microblaze | microblazeel \ 2199 - | mips | mipsbe | mipseb | mipsel | mipsle \ 2200 - | mips16 \ 2201 - | mips64 | mips64el \ 2202 - | mips64octeon | mips64octeonel \ 2203 - | mips64orion | mips64orionel \ 2204 - | mips64r5900 | mips64r5900el \ 2205 - | mips64vr | mips64vrel \ 2206 - | mips64vr4100 | mips64vr4100el \ 2207 - | mips64vr4300 | mips64vr4300el \ 2208 - | mips64vr5000 | mips64vr5000el \ 2209 - | mips64vr5900 | mips64vr5900el \ 2210 - | mipsisa32 | mipsisa32el \ 2211 - | mipsisa32r2 | mipsisa32r2el \ 2212 - | mipsisa32r6 | mipsisa32r6el \ 2213 - | mipsisa64 | mipsisa64el \ 2214 - | mipsisa64r2 | mipsisa64r2el \ 2215 - | mipsisa64r6 | mipsisa64r6el \ 2216 - | mipsisa64sb1 | mipsisa64sb1el \ 2217 - | mipsisa64sr71k | mipsisa64sr71kel \ 2218 - | mipsr5900 | mipsr5900el \ 2219 - | mipstx39 | mipstx39el \ 2220 - | mmix \ 2221 - | mn10200 | mn10300 \ 2222 - | moxie \ 2223 - | mt \ 2224 - | msp430 \ 2225 - | nds32 | nds32le | nds32be \ 2226 - | nfp \ 2227 - | nios | nios2 | nios2eb | nios2el \ 2228 - | none | np1 | ns16k | ns32k \ 2229 - | open8 \ 2230 - | or1k* \ 2231 - | or32 \ 2232 - | orion \ 2233 - | pdp10 | pdp11 | pj | pjl | pn | power \ 2234 - | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \ 2235 - | pru \ 2236 - | pyramid \ 2237 - | riscv | riscv32 | riscv64 \ 2238 - | rl78 | romp | rs6000 | rx \ 2239 - | score \ 2240 - | sh | sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \ 2241 - | sh[1234]e[lb] | sh[12345][lb]e | sh[23]ele | sh64 | sh64le \ 2242 - | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \ 2243 - | sparclite \ 2244 - | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \ 2245 - | spu \ 2246 - | tahoe \ 2247 - | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \ 2248 - | tron \ 2249 - | ubicom32 \ 2250 - | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \ 2251 - | vax \ 2252 - | visium \ 2253 - | wasm32 \ 2254 - | we32k \ 2255 - | x86 | x86_64 | xc16x | xgate | xps100 \ 2256 - | xstormy16 | xtensa* \ 2257 - | ymp \ 2258 - | z8k | z80) 2259 - ;; 2260 - 2261 - *) 2262 - echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2 2263 - exit 1 2264 - ;; 2265 - esac 2266 + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 2267 + exit 1 2268 ;; 2269 esac 2270 2271 # Here we canonicalize certain aliases for manufacturers. 2272 -case $vendor in 2273 - digital*) 2274 - vendor=dec 2275 +case $basic_machine in 2276 + *-digital*) 2277 + basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 2278 ;; 2279 - commodore*) 2280 - vendor=cbm 2281 + *-commodore*) 2282 + basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 2283 ;; 2284 *) 2285 ;; 2286 @@ -1273,246 +1345,200 @@ 2287 2288 # Decode manufacturer-specific aliases for certain operating systems. 2289 2290 -if [ x$os != x ] 2291 +if [ x"$os" != x"" ] 2292 then 2293 case $os in 2294 - # First match some system type aliases that might get confused 2295 - # with valid system types. 2296 - # solaris* is a basic system type, with this one exception. 2297 - auroraux) 2298 - os=auroraux 2299 - ;; 2300 - bluegene*) 2301 - os=cnk 2302 + # First match some system type aliases 2303 + # that might get confused with valid system types. 2304 + # -solaris* is a basic system type, with this one exception. 2305 + -auroraux) 2306 + os=-auroraux 2307 ;; 2308 - solaris1 | solaris1.*) 2309 + -solaris1 | -solaris1.*) 2310 os=`echo $os | sed -e 's|solaris1|sunos4|'` 2311 ;; 2312 - solaris) 2313 - os=solaris2 2314 - ;; 2315 - unixware*) 2316 - os=sysv4.2uw 2317 - ;; 2318 - gnu/linux*) 2319 - os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 2320 + -solaris) 2321 + os=-solaris2 2322 ;; 2323 - # es1800 is here to avoid being matched by es* (a different OS) 2324 - es1800*) 2325 - os=ose 2326 + -svr4*) 2327 + os=-sysv4 2328 ;; 2329 - # Some version numbers need modification 2330 - chorusos*) 2331 - os=chorusos 2332 + -unixware*) 2333 + os=-sysv4.2uw 2334 ;; 2335 - isc) 2336 - os=isc2.2 2337 - ;; 2338 - sco6) 2339 - os=sco5v6 2340 - ;; 2341 - sco5) 2342 - os=sco3.2v5 2343 - ;; 2344 - sco4) 2345 - os=sco3.2v4 2346 - ;; 2347 - sco3.2.[4-9]*) 2348 - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` 2349 - ;; 2350 - sco3.2v[4-9]* | sco5v6*) 2351 - # Don't forget version if it is 3.2v4 or newer. 2352 - ;; 2353 - scout) 2354 - # Don't match below 2355 - ;; 2356 - sco*) 2357 - os=sco3.2v2 2358 - ;; 2359 - psos*) 2360 - os=psos 2361 + -gnu/linux*) 2362 + os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 2363 ;; 2364 - # Now accept the basic system types. 2365 + # First accept the basic system types. 2366 # The portable systems comes first. 2367 - # Each alternative MUST end in a * to match a version number. 2368 - # sysv* is not here because it comes later, after sysvr4. 2369 - gnu* | bsd* | mach* | minix* | genix* | ultrix* | irix* \ 2370 - | *vms* | esix* | aix* | cnk* | sunos | sunos[34]*\ 2371 - | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \ 2372 - | sym* | kopensolaris* | plan9* \ 2373 - | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \ 2374 - | aos* | aros* | cloudabi* | sortix* \ 2375 - | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \ 2376 - | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \ 2377 - | knetbsd* | mirbsd* | netbsd* \ 2378 - | bitrig* | openbsd* | solidbsd* | libertybsd* \ 2379 - | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \ 2380 - | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \ 2381 - | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \ 2382 - | udi* | eabi* | lites* | ieee* | go32* | aux* | hcos* \ 2383 - | chorusrdb* | cegcc* | glidix* \ 2384 - | cygwin* | msys* | pe* | moss* | proelf* | rtems* \ 2385 - | midipix* | mingw32* | mingw64* | linux-gnu* | linux-android* \ 2386 - | linux-newlib* | linux-musl* | linux-uclibc* \ 2387 - | uxpv* | beos* | mpeix* | udk* | moxiebox* \ 2388 - | interix* | uwin* | mks* | rhapsody* | darwin* \ 2389 - | openstep* | oskit* | conix* | pw32* | nonstopux* \ 2390 - | storm-chaos* | tops10* | tenex* | tops20* | its* \ 2391 - | os2* | vos* | palmos* | uclinux* | nucleus* \ 2392 - | morphos* | superux* | rtmk* | windiss* \ 2393 - | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \ 2394 - | skyos* | haiku* | rdos* | toppers* | drops* | es* \ 2395 - | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \ 2396 - | midnightbsd* | amdhsa* | unleashed* | emscripten*) 2397 + # Each alternative MUST END IN A *, to match a version number. 2398 + # -sysv* is not here because it comes later, after sysvr4. 2399 + -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 2400 + | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 2401 + | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 2402 + | -sym* | -kopensolaris* | -plan9* \ 2403 + | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 2404 + | -aos* | -aros* | -cloudabi* | -sortix* \ 2405 + | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 2406 + | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 2407 + | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 2408 + | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \ 2409 + | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 2410 + | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 2411 + | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 2412 + | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 2413 + | -chorusos* | -chorusrdb* | -cegcc* \ 2414 + | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 2415 + | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ 2416 + | -linux-newlib* | -linux-musl* | -linux-uclibc* \ 2417 + | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ 2418 + | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 2419 + | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 2420 + | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 2421 + | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 2422 + | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 2423 + | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 2424 + | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ 2425 + | -onefs* | -tirtos*) 2426 # Remember, each alternative MUST END IN *, to match a version number. 2427 ;; 2428 - qnx*) 2429 - case $cpu in 2430 - x86 | i*86) 2431 + -qnx*) 2432 + case $basic_machine in 2433 + x86-* | i*86-*) 2434 ;; 2435 *) 2436 - os=nto-$os 2437 + os=-nto$os 2438 ;; 2439 esac 2440 ;; 2441 - hiux*) 2442 - os=hiuxwe2 2443 - ;; 2444 - nto-qnx*) 2445 + -nto-qnx*) 2446 ;; 2447 - nto*) 2448 + -nto*) 2449 os=`echo $os | sed -e 's|nto|nto-qnx|'` 2450 ;; 2451 - sim | xray | os68k* | v88r* \ 2452 - | windows* | osx | abug | netware* | os9* \ 2453 - | macos* | mpw* | magic* | mmixware* | mon960* | lnews*) 2454 + -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 2455 + | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 2456 + | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 2457 ;; 2458 - linux-dietlibc) 2459 - os=linux-dietlibc 2460 + -mac*) 2461 + os=`echo $os | sed -e 's|mac|macos|'` 2462 ;; 2463 - linux*) 2464 - os=`echo $os | sed -e 's|linux|linux-gnu|'` 2465 - ;; 2466 - lynx*178) 2467 - os=lynxos178 2468 + -linux-dietlibc) 2469 + os=-linux-dietlibc 2470 ;; 2471 - lynx*5) 2472 - os=lynxos5 2473 + -linux*) 2474 + os=`echo $os | sed -e 's|linux|linux-gnu|'` 2475 ;; 2476 - lynx*) 2477 - os=lynxos 2478 + -sunos5*) 2479 + os=`echo $os | sed -e 's|sunos5|solaris2|'` 2480 ;; 2481 - mac*) 2482 - os=`echo "$os" | sed -e 's|mac|macos|'` 2483 + -sunos6*) 2484 + os=`echo $os | sed -e 's|sunos6|solaris3|'` 2485 ;; 2486 - opened*) 2487 - os=openedition 2488 + -opened*) 2489 + os=-openedition 2490 ;; 2491 - os400*) 2492 - os=os400 2493 + -os400*) 2494 + os=-os400 2495 ;; 2496 - sunos5*) 2497 - os=`echo "$os" | sed -e 's|sunos5|solaris2|'` 2498 + -wince*) 2499 + os=-wince 2500 ;; 2501 - sunos6*) 2502 - os=`echo "$os" | sed -e 's|sunos6|solaris3|'` 2503 + -osfrose*) 2504 + os=-osfrose 2505 ;; 2506 - wince*) 2507 - os=wince 2508 + -osf*) 2509 + os=-osf 2510 ;; 2511 - utek*) 2512 - os=bsd 2513 + -utek*) 2514 + os=-bsd 2515 ;; 2516 - dynix*) 2517 - os=bsd 2518 + -dynix*) 2519 + os=-bsd 2520 ;; 2521 - acis*) 2522 - os=aos 2523 + -acis*) 2524 + os=-aos 2525 ;; 2526 - atheos*) 2527 - os=atheos 2528 + -atheos*) 2529 + os=-atheos 2530 ;; 2531 - syllable*) 2532 - os=syllable 2533 + -syllable*) 2534 + os=-syllable 2535 ;; 2536 - 386bsd) 2537 - os=bsd 2538 + -386bsd) 2539 + os=-bsd 2540 ;; 2541 - ctix* | uts*) 2542 - os=sysv 2543 + -ctix* | -uts*) 2544 + os=-sysv 2545 ;; 2546 - nova*) 2547 - os=rtmk-nova 2548 + -nova*) 2549 + os=-rtmk-nova 2550 ;; 2551 - ns2) 2552 - os=nextstep2 2553 + -ns2 ) 2554 + os=-nextstep2 2555 ;; 2556 - nsk*) 2557 - os=nsk 2558 + -nsk*) 2559 + os=-nsk 2560 ;; 2561 # Preserve the version number of sinix5. 2562 - sinix5.*) 2563 + -sinix5.*) 2564 os=`echo $os | sed -e 's|sinix|sysv|'` 2565 ;; 2566 - sinix*) 2567 - os=sysv4 2568 + -sinix*) 2569 + os=-sysv4 2570 ;; 2571 - tpf*) 2572 - os=tpf 2573 + -tpf*) 2574 + os=-tpf 2575 ;; 2576 - triton*) 2577 - os=sysv3 2578 + -triton*) 2579 + os=-sysv3 2580 ;; 2581 - oss*) 2582 - os=sysv3 2583 + -oss*) 2584 + os=-sysv3 2585 ;; 2586 - svr4*) 2587 - os=sysv4 2588 + -svr4) 2589 + os=-sysv4 2590 ;; 2591 - svr3) 2592 - os=sysv3 2593 + -svr3) 2594 + os=-sysv3 2595 ;; 2596 - sysvr4) 2597 - os=sysv4 2598 + -sysvr4) 2599 + os=-sysv4 2600 ;; 2601 - # This must come after sysvr4. 2602 - sysv*) 2603 + # This must come after -sysvr4. 2604 + -sysv*) 2605 ;; 2606 - ose*) 2607 - os=ose 2608 + -ose*) 2609 + os=-ose 2610 ;; 2611 - *mint | mint[0-9]* | *MiNT | MiNT[0-9]*) 2612 - os=mint 2613 + -es1800*) 2614 + os=-ose 2615 ;; 2616 - zvmoe) 2617 - os=zvmoe 2618 + -xenix) 2619 + os=-xenix 2620 ;; 2621 - dicos*) 2622 - os=dicos 2623 + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 2624 + os=-mint 2625 ;; 2626 - pikeos*) 2627 - # Until real need of OS specific support for 2628 - # particular features comes up, bare metal 2629 - # configurations are quite functional. 2630 - case $cpu in 2631 - arm*) 2632 - os=eabi 2633 - ;; 2634 - *) 2635 - os=elf 2636 - ;; 2637 - esac 2638 + -aros*) 2639 + os=-aros 2640 ;; 2641 - nacl*) 2642 + -zvmoe) 2643 + os=-zvmoe 2644 ;; 2645 - ios) 2646 + -dicos*) 2647 + os=-dicos 2648 ;; 2649 - none) 2650 + -nacl*) 2651 + ;; 2652 + -ios) 2653 ;; 2654 - *-eabi) 2655 + -none) 2656 ;; 2657 *) 2658 - echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2 2659 + # Get rid of the `-' at the beginning of $os. 2660 + os=`echo $os | sed 's/[^-]*-//'` 2661 + echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 2662 exit 1 2663 ;; 2664 esac 2665 @@ -1528,265 +1554,261 @@ 2666 # will signal an error saying that MANUFACTURER isn't an operating 2667 # system, and we'll never get to this point. 2668 2669 -case $cpu-$vendor in 2670 +case $basic_machine in 2671 score-*) 2672 - os=elf 2673 + os=-elf 2674 ;; 2675 spu-*) 2676 - os=elf 2677 + os=-elf 2678 ;; 2679 *-acorn) 2680 - os=riscix1.2 2681 + os=-riscix1.2 2682 ;; 2683 arm*-rebel) 2684 - os=linux 2685 + os=-linux 2686 ;; 2687 arm*-semi) 2688 - os=aout 2689 + os=-aout 2690 ;; 2691 c4x-* | tic4x-*) 2692 - os=coff 2693 + os=-coff 2694 ;; 2695 c8051-*) 2696 - os=elf 2697 - ;; 2698 - clipper-intergraph) 2699 - os=clix 2700 + os=-elf 2701 ;; 2702 hexagon-*) 2703 - os=elf 2704 + os=-elf 2705 ;; 2706 tic54x-*) 2707 - os=coff 2708 + os=-coff 2709 ;; 2710 tic55x-*) 2711 - os=coff 2712 + os=-coff 2713 ;; 2714 tic6x-*) 2715 - os=coff 2716 + os=-coff 2717 ;; 2718 # This must come before the *-dec entry. 2719 pdp10-*) 2720 - os=tops20 2721 + os=-tops20 2722 ;; 2723 pdp11-*) 2724 - os=none 2725 + os=-none 2726 ;; 2727 *-dec | vax-*) 2728 - os=ultrix4.2 2729 + os=-ultrix4.2 2730 ;; 2731 m68*-apollo) 2732 - os=domain 2733 + os=-domain 2734 ;; 2735 i386-sun) 2736 - os=sunos4.0.2 2737 + os=-sunos4.0.2 2738 ;; 2739 m68000-sun) 2740 - os=sunos3 2741 + os=-sunos3 2742 ;; 2743 m68*-cisco) 2744 - os=aout 2745 + os=-aout 2746 ;; 2747 mep-*) 2748 - os=elf 2749 + os=-elf 2750 ;; 2751 mips*-cisco) 2752 - os=elf 2753 + os=-elf 2754 ;; 2755 mips*-*) 2756 - os=elf 2757 + os=-elf 2758 ;; 2759 or32-*) 2760 - os=coff 2761 + os=-coff 2762 ;; 2763 *-tti) # must be before sparc entry or we get the wrong os. 2764 - os=sysv3 2765 + os=-sysv3 2766 ;; 2767 sparc-* | *-sun) 2768 - os=sunos4.1.1 2769 - ;; 2770 - pru-*) 2771 - os=elf 2772 + os=-sunos4.1.1 2773 ;; 2774 *-be) 2775 - os=beos 2776 + os=-beos 2777 + ;; 2778 + *-haiku) 2779 + os=-haiku 2780 ;; 2781 *-ibm) 2782 - os=aix 2783 + os=-aix 2784 ;; 2785 *-knuth) 2786 - os=mmixware 2787 + os=-mmixware 2788 ;; 2789 *-wec) 2790 - os=proelf 2791 + os=-proelf 2792 ;; 2793 *-winbond) 2794 - os=proelf 2795 + os=-proelf 2796 ;; 2797 *-oki) 2798 - os=proelf 2799 + os=-proelf 2800 ;; 2801 *-hp) 2802 - os=hpux 2803 + os=-hpux 2804 ;; 2805 *-hitachi) 2806 - os=hiux 2807 + os=-hiux 2808 ;; 2809 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 2810 - os=sysv 2811 + os=-sysv 2812 ;; 2813 *-cbm) 2814 - os=amigaos 2815 + os=-amigaos 2816 ;; 2817 *-dg) 2818 - os=dgux 2819 + os=-dgux 2820 ;; 2821 *-dolphin) 2822 - os=sysv3 2823 + os=-sysv3 2824 ;; 2825 m68k-ccur) 2826 - os=rtu 2827 + os=-rtu 2828 ;; 2829 m88k-omron*) 2830 - os=luna 2831 + os=-luna 2832 ;; 2833 - *-next) 2834 - os=nextstep 2835 + *-next ) 2836 + os=-nextstep 2837 ;; 2838 *-sequent) 2839 - os=ptx 2840 + os=-ptx 2841 ;; 2842 *-crds) 2843 - os=unos 2844 + os=-unos 2845 ;; 2846 *-ns) 2847 - os=genix 2848 + os=-genix 2849 ;; 2850 i370-*) 2851 - os=mvs 2852 + os=-mvs 2853 + ;; 2854 + *-next) 2855 + os=-nextstep3 2856 ;; 2857 *-gould) 2858 - os=sysv 2859 + os=-sysv 2860 ;; 2861 *-highlevel) 2862 - os=bsd 2863 + os=-bsd 2864 ;; 2865 *-encore) 2866 - os=bsd 2867 + os=-bsd 2868 ;; 2869 *-sgi) 2870 - os=irix 2871 + os=-irix 2872 ;; 2873 *-siemens) 2874 - os=sysv4 2875 + os=-sysv4 2876 ;; 2877 *-masscomp) 2878 - os=rtu 2879 + os=-rtu 2880 ;; 2881 f30[01]-fujitsu | f700-fujitsu) 2882 - os=uxpv 2883 + os=-uxpv 2884 ;; 2885 *-rom68k) 2886 - os=coff 2887 + os=-coff 2888 ;; 2889 *-*bug) 2890 - os=coff 2891 + os=-coff 2892 ;; 2893 *-apple) 2894 - os=macos 2895 + os=-macos 2896 ;; 2897 *-atari*) 2898 - os=mint 2899 - ;; 2900 - *-wrs) 2901 - os=vxworks 2902 + os=-mint 2903 ;; 2904 *) 2905 - os=none 2906 + os=-none 2907 ;; 2908 esac 2909 fi 2910 2911 # Here we handle the case where we know the os, and the CPU type, but not the 2912 # manufacturer. We pick the logical manufacturer. 2913 -case $vendor in 2914 - unknown) 2915 +vendor=unknown 2916 +case $basic_machine in 2917 + *-unknown) 2918 case $os in 2919 - riscix*) 2920 + -riscix*) 2921 vendor=acorn 2922 ;; 2923 - sunos*) 2924 + -sunos*) 2925 vendor=sun 2926 ;; 2927 - cnk*|-aix*) 2928 + -cnk*|-aix*) 2929 vendor=ibm 2930 ;; 2931 - beos*) 2932 + -beos*) 2933 vendor=be 2934 ;; 2935 - hpux*) 2936 + -hpux*) 2937 vendor=hp 2938 ;; 2939 - mpeix*) 2940 + -mpeix*) 2941 vendor=hp 2942 ;; 2943 - hiux*) 2944 + -hiux*) 2945 vendor=hitachi 2946 ;; 2947 - unos*) 2948 + -unos*) 2949 vendor=crds 2950 ;; 2951 - dgux*) 2952 + -dgux*) 2953 vendor=dg 2954 ;; 2955 - luna*) 2956 + -luna*) 2957 vendor=omron 2958 ;; 2959 - genix*) 2960 + -genix*) 2961 vendor=ns 2962 ;; 2963 - clix*) 2964 - vendor=intergraph 2965 - ;; 2966 - mvs* | opened*) 2967 + -mvs* | -opened*) 2968 vendor=ibm 2969 ;; 2970 - os400*) 2971 + -os400*) 2972 vendor=ibm 2973 ;; 2974 - ptx*) 2975 + -ptx*) 2976 vendor=sequent 2977 ;; 2978 - tpf*) 2979 + -tpf*) 2980 vendor=ibm 2981 ;; 2982 - vxsim* | vxworks* | windiss*) 2983 + -vxsim* | -vxworks* | -windiss*) 2984 vendor=wrs 2985 ;; 2986 - aux*) 2987 + -aux*) 2988 vendor=apple 2989 ;; 2990 - hms*) 2991 + -hms*) 2992 vendor=hitachi 2993 ;; 2994 - mpw* | macos*) 2995 + -mpw* | -macos*) 2996 vendor=apple 2997 ;; 2998 - *mint | mint[0-9]* | *MiNT | MiNT[0-9]*) 2999 + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 3000 vendor=atari 3001 ;; 3002 - vos*) 3003 + -vos*) 3004 vendor=stratus 3005 ;; 3006 esac 3007 + basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 3008 ;; 3009 esac 3010 3011 -echo "$cpu-$vendor-$os" 3012 +echo $basic_machine$os 3013 exit 3014 3015 # Local variables: 3016 -# eval: (add-hook 'before-save-hook 'time-stamp) 3017 +# eval: (add-hook 'write-file-hooks 'time-stamp) 3018 # time-stamp-start: "timestamp='" 3019 # time-stamp-format: "%:y-%02m-%02d" 3020 # time-stamp-end: "'" 3021 Only in gcc-9.4.0/gcc: .config.orig 3022 diff -ru gcc-9.4.0.orig/gcc/builtins.c gcc-9.4.0/gcc/builtins.c 3023 --- gcc-9.4.0.orig/gcc/builtins.c 2021-06-01 09:53:04.440471339 +0200 3024 +++ gcc-9.4.0/gcc/builtins.c 2023-06-13 00:16:43.437074369 +0200 3025 @@ -4656,6 +4656,7 @@ 3026 static rtx 3027 expand_builtin_memcmp (tree exp, rtx target, bool result_eq) 3028 { 3029 + return NULL_RTX; 3030 if (!validate_arglist (exp, 3031 POINTER_TYPE, POINTER_TYPE, INTEGER_TYPE, VOID_TYPE)) 3032 return NULL_RTX; 3033 Only in gcc-9.4.0/gcc: builtins.c.orig 3034 diff -ru gcc-9.4.0.orig/gcc/common.opt gcc-9.4.0/gcc/common.opt 3035 --- gcc-9.4.0.orig/gcc/common.opt 2021-06-01 09:53:04.468471687 +0200 3036 +++ gcc-9.4.0/gcc/common.opt 2023-06-13 00:16:43.423074369 +0200 3037 @@ -3287,11 +3287,11 @@ 3038 3039 no-pie 3040 Driver RejectNegative Negative(shared) 3041 -Don't create a dynamically linked position independent executable. 3042 +Don't create a position independent executable. 3043 3044 pie 3045 Driver RejectNegative Negative(no-pie) 3046 -Create a dynamically linked position independent executable. 3047 +Create a position independent executable. 3048 3049 static-pie 3050 Driver RejectNegative Negative(pie) 3051 Only in gcc-9.4.0/gcc/config: .i386.orig 3052 Only in gcc-9.4.0/gcc/config: .m68k.orig 3053 Only in gcc-9.4.0/gcc/config: .microblaze.orig 3054 Only in gcc-9.4.0/gcc/config: .riscv.orig 3055 Only in gcc-9.4.0/gcc/config: .s390.orig 3056 Only in gcc-9.4.0/gcc/config: .sh.orig 3057 diff -ru gcc-9.4.0.orig/gcc/config/gnu-user.h gcc-9.4.0/gcc/config/gnu-user.h 3058 --- gcc-9.4.0.orig/gcc/config/gnu-user.h 2021-06-01 09:53:04.528472435 +0200 3059 +++ gcc-9.4.0/gcc/config/gnu-user.h 2023-06-13 00:16:43.423074369 +0200 3060 @@ -51,13 +51,12 @@ 3061 #define GNU_USER_TARGET_STARTFILE_SPEC \ 3062 "%{shared:; \ 3063 pg|p|profile:%{static-pie:grcrt1.o%s;:gcrt1.o%s}; \ 3064 - static:crt1.o%s; \ 3065 - static-pie:rcrt1.o%s; \ 3066 + static|static-pie:%{" PIE_SPEC ":rcrt1.o%s;:crt1.o%s}; \ 3067 " PIE_SPEC ":Scrt1.o%s; \ 3068 :crt1.o%s} " \ 3069 GNU_USER_TARGET_CRTI " \ 3070 - %{static:crtbeginT.o%s; \ 3071 - shared|static-pie|" PIE_SPEC ":crtbeginS.o%s; \ 3072 + %{shared|" PIE_SPEC ":crtbeginS.o%s; \ 3073 + static:crtbeginT.o%s; \ 3074 :crtbegin.o%s} \ 3075 %{fvtable-verify=none:%s; \ 3076 fvtable-verify=preinit:vtv_start_preinit.o%s; \ 3077 @@ -76,8 +75,7 @@ 3078 "%{fvtable-verify=none:%s; \ 3079 fvtable-verify=preinit:vtv_end_preinit.o%s; \ 3080 fvtable-verify=std:vtv_end.o%s} \ 3081 - %{static:crtend.o%s; \ 3082 - shared|static-pie|" PIE_SPEC ":crtendS.o%s; \ 3083 + %{shared|" PIE_SPEC ":crtendS.o%s; \ 3084 :crtend.o%s} " \ 3085 GNU_USER_TARGET_CRTN " " \ 3086 CRTOFFLOADEND 3087 @@ -106,7 +104,7 @@ 3088 #define LIB_SPEC GNU_USER_TARGET_LIB_SPEC 3089 3090 #if defined(HAVE_LD_EH_FRAME_HDR) 3091 -#define LINK_EH_SPEC "%{!static|static-pie:--eh-frame-hdr} " 3092 +#define LINK_EH_SPEC "%{!static|" PIE_SPEC ":--eh-frame-hdr} " 3093 #endif 3094 3095 #define GNU_USER_TARGET_LINK_GCC_C_SEQUENCE_SPEC \ 3096 diff -ru gcc-9.4.0.orig/gcc/config/i386/pmm_malloc.h gcc-9.4.0/gcc/config/i386/pmm_malloc.h 3097 --- gcc-9.4.0.orig/gcc/config/i386/pmm_malloc.h 2021-06-01 09:53:04.552472732 +0200 3098 +++ gcc-9.4.0/gcc/config/i386/pmm_malloc.h 2023-06-13 00:16:43.400074370 +0200 3099 @@ -27,12 +27,13 @@ 3100 #include <stdlib.h> 3101 3102 /* We can't depend on <stdlib.h> since the prototype of posix_memalign 3103 - may not be visible. */ 3104 + may not be visible and we can't pollute the namespace either. */ 3105 #ifndef __cplusplus 3106 -extern int posix_memalign (void **, size_t, size_t); 3107 +extern int _mm_posix_memalign (void **, size_t, size_t) 3108 #else 3109 -extern "C" int posix_memalign (void **, size_t, size_t) throw (); 3110 +extern "C" int _mm_posix_memalign (void **, size_t, size_t) throw () 3111 #endif 3112 +__asm__("posix_memalign"); 3113 3114 static __inline void * 3115 _mm_malloc (size_t __size, size_t __alignment) 3116 @@ -42,7 +43,7 @@ 3117 return malloc (__size); 3118 if (__alignment == 2 || (sizeof (void *) == 8 && __alignment == 4)) 3119 __alignment = sizeof (void *); 3120 - if (posix_memalign (&__ptr, __alignment, __size) == 0) 3121 + if (_mm_posix_memalign (&__ptr, __alignment, __size) == 0) 3122 return __ptr; 3123 else 3124 return NULL; 3125 diff -ru gcc-9.4.0.orig/gcc/config/m68k/linux.h gcc-9.4.0/gcc/config/m68k/linux.h 3126 --- gcc-9.4.0.orig/gcc/config/m68k/linux.h 2021-06-01 09:53:04.568472931 +0200 3127 +++ gcc-9.4.0/gcc/config/m68k/linux.h 2023-06-13 00:16:43.422074369 +0200 3128 @@ -73,6 +73,9 @@ 3129 3130 #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" 3131 3132 +#undef MUSL_DYNAMIC_LINKER 3133 +#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-m68k.so.1" 3134 + 3135 #undef LINK_SPEC 3136 #define LINK_SPEC "-m m68kelf %{shared} \ 3137 %{!shared: \ 3138 diff -ru gcc-9.4.0.orig/gcc/config/m68k/m68k.md gcc-9.4.0/gcc/config/m68k/m68k.md 3139 --- gcc-9.4.0.orig/gcc/config/m68k/m68k.md 2021-06-01 09:53:04.568472931 +0200 3140 +++ gcc-9.4.0/gcc/config/m68k/m68k.md 2023-06-13 00:16:43.434074369 +0200 3141 @@ -4126,13 +4126,13 @@ 3142 (define_expand "sqrt<mode>2" 3143 [(set (match_operand:FP 0 "nonimmediate_operand" "") 3144 (sqrt:FP (match_operand:FP 1 "general_operand" "")))] 3145 - "TARGET_HARD_FLOAT" 3146 + "(TARGET_68881 && TARGET_68040) || TARGET_COLDFIRE_FPU" 3147 "") 3148 3149 (define_insn "sqrt<mode>2_68881" 3150 [(set (match_operand:FP 0 "nonimmediate_operand" "=f") 3151 (sqrt:FP (match_operand:FP 1 "general_operand" "f<FP:dreg>m")))] 3152 - "TARGET_68881" 3153 + "TARGET_68881 && TARGET_68040" 3154 { 3155 if (FP_REG_P (operands[1])) 3156 return "f<FP:round>sqrt%.x %1,%0"; 3157 diff -ru gcc-9.4.0.orig/gcc/config/microblaze/microblaze.c gcc-9.4.0/gcc/config/microblaze/microblaze.c 3158 --- gcc-9.4.0.orig/gcc/config/microblaze/microblaze.c 2021-06-01 09:53:04.572472981 +0200 3159 +++ gcc-9.4.0/gcc/config/microblaze/microblaze.c 2023-06-13 00:16:43.412074370 +0200 3160 @@ -2476,7 +2476,7 @@ 3161 unsigned long value_long; 3162 REAL_VALUE_TO_TARGET_SINGLE (*CONST_DOUBLE_REAL_VALUE (op), 3163 value_long); 3164 - fprintf (file, HOST_WIDE_INT_PRINT_HEX, value_long); 3165 + fprintf (file, "0x%lx", value_long); 3166 } 3167 else 3168 { 3169 @@ -2535,7 +2535,7 @@ 3170 print_operand_address (file, XEXP (op, 0)); 3171 } 3172 else if (letter == 'm') 3173 - fprintf (file, HOST_WIDE_INT_PRINT_DEC, (1L << INTVAL (op))); 3174 + fprintf (file, "%ld", (1L << INTVAL (op))); 3175 else 3176 output_addr_const (file, op); 3177 } 3178 diff -ru gcc-9.4.0.orig/gcc/config/riscv/riscv.c gcc-9.4.0/gcc/config/riscv/riscv.c 3179 --- gcc-9.4.0.orig/gcc/config/riscv/riscv.c 2021-06-01 09:53:04.604473381 +0200 3180 +++ gcc-9.4.0/gcc/config/riscv/riscv.c 2023-06-13 00:16:43.431074369 +0200 3181 @@ -1257,9 +1257,11 @@ 3182 rtx dest, tp, tmp; 3183 enum tls_model model = SYMBOL_REF_TLS_MODEL (loc); 3184 3185 +#if 0 3186 /* Since we support TLS copy relocs, non-PIC TLS accesses may all use LE. */ 3187 if (!flag_pic) 3188 model = TLS_MODEL_LOCAL_EXEC; 3189 +#endif 3190 3191 switch (model) 3192 { 3193 Only in gcc-9.4.0/gcc/config/riscv: riscv.c.orig 3194 diff -ru gcc-9.4.0.orig/gcc/config/s390/linux.h gcc-9.4.0/gcc/config/s390/linux.h 3195 --- gcc-9.4.0.orig/gcc/config/s390/linux.h 2021-06-01 09:53:04.620473579 +0200 3196 +++ gcc-9.4.0/gcc/config/s390/linux.h 2023-06-13 00:16:43.411074370 +0200 3197 @@ -75,6 +75,9 @@ 3198 #define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" 3199 #define GLIBC_DYNAMIC_LINKER64 "/lib/ld64.so.1" 3200 3201 +#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-s390.so.1" 3202 +#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-s390x.so.1" 3203 + 3204 #undef LINK_SPEC 3205 #define LINK_SPEC \ 3206 "%{m31:-m elf_s390}%{m64:-m elf64_s390} \ 3207 diff -ru gcc-9.4.0.orig/gcc/config/sh/sh.c gcc-9.4.0/gcc/config/sh/sh.c 3208 --- gcc-9.4.0.orig/gcc/config/sh/sh.c 2021-06-01 09:53:04.632473730 +0200 3209 +++ gcc-9.4.0/gcc/config/sh/sh.c 2023-06-13 00:16:43.408074370 +0200 3210 @@ -689,6 +689,7 @@ 3211 model_names[sh_atomic_model::hard_llcs] = "hard-llcs"; 3212 model_names[sh_atomic_model::soft_tcb] = "soft-tcb"; 3213 model_names[sh_atomic_model::soft_imask] = "soft-imask"; 3214 + model_names[sh_atomic_model::hard_cas] = "hard-cas"; 3215 3216 const char* model_cdef_names[sh_atomic_model::num_models]; 3217 model_cdef_names[sh_atomic_model::none] = "NONE"; 3218 @@ -696,6 +697,7 @@ 3219 model_cdef_names[sh_atomic_model::hard_llcs] = "HARD_LLCS"; 3220 model_cdef_names[sh_atomic_model::soft_tcb] = "SOFT_TCB"; 3221 model_cdef_names[sh_atomic_model::soft_imask] = "SOFT_IMASK"; 3222 + model_cdef_names[sh_atomic_model::hard_cas] = "HARD_CAS"; 3223 3224 sh_atomic_model ret; 3225 ret.type = sh_atomic_model::none; 3226 @@ -774,6 +776,9 @@ 3227 if (ret.type == sh_atomic_model::soft_imask && TARGET_USERMODE) 3228 err_ret ("cannot use atomic model %s in user mode", ret.name); 3229 3230 + if (ret.type == sh_atomic_model::hard_cas && !TARGET_SHJ2) 3231 + err_ret ("atomic model %s is only available J2 targets", ret.name); 3232 + 3233 return ret; 3234 3235 #undef err_ret 3236 @@ -830,6 +835,8 @@ 3237 sh_cpu = PROCESSOR_SH2E; 3238 if (TARGET_SH2A) 3239 sh_cpu = PROCESSOR_SH2A; 3240 + if (TARGET_SHJ2) 3241 + sh_cpu = PROCESSOR_SHJ2; 3242 if (TARGET_SH3) 3243 sh_cpu = PROCESSOR_SH3; 3244 if (TARGET_SH3E) 3245 Only in gcc-9.4.0/gcc/config/sh: sh.c.orig 3246 diff -ru gcc-9.4.0.orig/gcc/config/sh/sh.h gcc-9.4.0/gcc/config/sh/sh.h 3247 --- gcc-9.4.0.orig/gcc/config/sh/sh.h 2021-06-01 09:53:04.632473730 +0200 3248 +++ gcc-9.4.0/gcc/config/sh/sh.h 2023-06-13 00:16:43.409074370 +0200 3249 @@ -85,6 +85,7 @@ 3250 #define SUPPORT_SH4_SINGLE 1 3251 #define SUPPORT_SH2A 1 3252 #define SUPPORT_SH2A_SINGLE 1 3253 +#define SUPPORT_SHJ2 1 3254 #endif 3255 3256 #define TARGET_DIVIDE_CALL_DIV1 (sh_div_strategy == SH_DIV_CALL_DIV1) 3257 @@ -117,6 +118,7 @@ 3258 #define SELECT_SH4A_SINGLE_ONLY (MASK_SH4A | SELECT_SH4_SINGLE_ONLY) 3259 #define SELECT_SH4A (MASK_SH4A | SELECT_SH4) 3260 #define SELECT_SH4A_SINGLE (MASK_SH4A | SELECT_SH4_SINGLE) 3261 +#define SELECT_SHJ2 (MASK_SHJ2 | SELECT_SH2) 3262 3263 #if SUPPORT_SH1 3264 #define SUPPORT_SH2 1 3265 @@ -124,6 +126,7 @@ 3266 #if SUPPORT_SH2 3267 #define SUPPORT_SH3 1 3268 #define SUPPORT_SH2A_NOFPU 1 3269 +#define SUPPORT_SHJ2 1 3270 #endif 3271 #if SUPPORT_SH3 3272 #define SUPPORT_SH4_NOFPU 1 3273 @@ -156,7 +159,7 @@ 3274 #define MASK_ARCH (MASK_SH1 | MASK_SH2 | MASK_SH3 | MASK_SH_E | MASK_SH4 \ 3275 | MASK_HARD_SH2A | MASK_HARD_SH2A_DOUBLE | MASK_SH4A \ 3276 | MASK_HARD_SH4 | MASK_FPU_SINGLE \ 3277 - | MASK_FPU_SINGLE_ONLY) 3278 + | MASK_FPU_SINGLE_ONLY | MASK_SHJ2) 3279 3280 /* This defaults us to big-endian. */ 3281 #ifndef TARGET_ENDIAN_DEFAULT 3282 @@ -231,7 +234,8 @@ 3283 %{m2a-single:--isa=sh2a} \ 3284 %{m2a-single-only:--isa=sh2a} \ 3285 %{m2a-nofpu:--isa=sh2a-nofpu} \ 3286 -%{m4al:-dsp}" 3287 +%{m4al:-dsp} \ 3288 +%{mj2:-isa=j2}" 3289 3290 #define ASM_SPEC SH_ASM_SPEC 3291 3292 @@ -347,6 +351,7 @@ 3293 hard_llcs, 3294 soft_tcb, 3295 soft_imask, 3296 + hard_cas, 3297 3298 num_models 3299 }; 3300 @@ -390,6 +395,9 @@ 3301 #define TARGET_ATOMIC_SOFT_IMASK \ 3302 (selected_atomic_model ().type == sh_atomic_model::soft_imask) 3303 3304 +#define TARGET_ATOMIC_HARD_CAS \ 3305 + (selected_atomic_model ().type == sh_atomic_model::hard_cas) 3306 + 3307 #endif // __cplusplus 3308 3309 #define SUBTARGET_OVERRIDE_OPTIONS (void) 0 3310 @@ -1523,7 +1531,7 @@ 3311 3312 /* Nonzero if the target supports dynamic shift instructions 3313 like shad and shld. */ 3314 -#define TARGET_DYNSHIFT (TARGET_SH3 || TARGET_SH2A) 3315 +#define TARGET_DYNSHIFT (TARGET_SH3 || TARGET_SH2A || TARGET_SHJ2) 3316 3317 /* The cost of using the dynamic shift insns (shad, shld) are the same 3318 if they are available. If they are not available a library function will 3319 @@ -1786,6 +1794,7 @@ 3320 PROCESSOR_SH2, 3321 PROCESSOR_SH2E, 3322 PROCESSOR_SH2A, 3323 + PROCESSOR_SHJ2, 3324 PROCESSOR_SH3, 3325 PROCESSOR_SH3E, 3326 PROCESSOR_SH4, 3327 Only in gcc-9.4.0/gcc/config/sh: sh.h.orig 3328 diff -ru gcc-9.4.0.orig/gcc/config/sh/sh.opt gcc-9.4.0/gcc/config/sh/sh.opt 3329 --- gcc-9.4.0.orig/gcc/config/sh/sh.opt 2021-06-01 09:53:04.636473777 +0200 3330 +++ gcc-9.4.0/gcc/config/sh/sh.opt 2023-06-13 00:16:43.409074370 +0200 3331 @@ -65,6 +65,10 @@ 3332 Target RejectNegative Condition(SUPPORT_SH2E) 3333 Generate SH2e code. 3334 3335 +mj2 3336 +Target RejectNegative Mask(SHJ2) Condition(SUPPORT_SHJ2) 3337 +Generate J2 code. 3338 + 3339 m3 3340 Target RejectNegative Mask(SH3) Condition(SUPPORT_SH3) 3341 Generate SH3 code. 3342 diff -ru gcc-9.4.0.orig/gcc/config/sh/sync.md gcc-9.4.0/gcc/config/sh/sync.md 3343 --- gcc-9.4.0.orig/gcc/config/sh/sync.md 2021-06-01 09:53:04.636473777 +0200 3344 +++ gcc-9.4.0/gcc/config/sh/sync.md 2023-06-13 00:16:43.410074370 +0200 3345 @@ -240,6 +240,9 @@ 3346 || (TARGET_SH4A && <MODE>mode == SImode && !TARGET_ATOMIC_STRICT)) 3347 atomic_insn = gen_atomic_compare_and_swap<mode>_hard (old_val, mem, 3348 exp_val, new_val); 3349 + else if (TARGET_ATOMIC_HARD_CAS && <MODE>mode == SImode) 3350 + atomic_insn = gen_atomic_compare_and_swap<mode>_cas (old_val, mem, 3351 + exp_val, new_val); 3352 else if (TARGET_ATOMIC_SOFT_GUSA) 3353 atomic_insn = gen_atomic_compare_and_swap<mode>_soft_gusa (old_val, mem, 3354 exp_val, new_val); 3355 @@ -306,6 +309,57 @@ 3356 } 3357 [(set_attr "length" "14")]) 3358 3359 +(define_expand "atomic_compare_and_swapsi_cas" 3360 + [(set (match_operand:SI 0 "register_operand" "=r") 3361 + (unspec_volatile:SI 3362 + [(match_operand:SI 1 "atomic_mem_operand_0" "=Sra") 3363 + (match_operand:SI 2 "register_operand" "r") 3364 + (match_operand:SI 3 "register_operand" "r")] 3365 + UNSPECV_CMPXCHG_1))] 3366 + "TARGET_ATOMIC_HARD_CAS" 3367 +{ 3368 + rtx mem = gen_rtx_REG (SImode, 0); 3369 + emit_move_insn (mem, force_reg (SImode, XEXP (operands[1], 0))); 3370 + emit_insn (gen_shj2_cas (operands[0], mem, operands[2], operands[3])); 3371 + DONE; 3372 +}) 3373 + 3374 +(define_insn "shj2_cas" 3375 + [(set (match_operand:SI 0 "register_operand" "=&r") 3376 + (unspec_volatile:SI 3377 + [(match_operand:SI 1 "register_operand" "=r") 3378 + (match_operand:SI 2 "register_operand" "r") 3379 + (match_operand:SI 3 "register_operand" "0")] 3380 + UNSPECV_CMPXCHG_1)) 3381 + (set (reg:SI T_REG) 3382 + (unspec_volatile:SI [(const_int 0)] UNSPECV_CMPXCHG_3))] 3383 + "TARGET_ATOMIC_HARD_CAS" 3384 + "cas.l %2,%0,@%1" 3385 + [(set_attr "length" "2")] 3386 +) 3387 + 3388 +(define_expand "atomic_compare_and_swapqi_cas" 3389 + [(set (match_operand:SI 0 "arith_reg_dest" "=&r") 3390 + (unspec_volatile:SI 3391 + [(match_operand:SI 1 "atomic_mem_operand_0" "=Sra") 3392 + (match_operand:SI 2 "arith_operand" "rI08") 3393 + (match_operand:SI 3 "arith_operand" "rI08")] 3394 + UNSPECV_CMPXCHG_1))] 3395 + "TARGET_ATOMIC_HARD_CAS" 3396 +{FAIL;} 3397 +) 3398 + 3399 +(define_expand "atomic_compare_and_swaphi_cas" 3400 + [(set (match_operand:SI 0 "arith_reg_dest" "=&r") 3401 + (unspec_volatile:SI 3402 + [(match_operand:SI 1 "atomic_mem_operand_0" "=Sra") 3403 + (match_operand:SI 2 "arith_operand" "rI08") 3404 + (match_operand:SI 3 "arith_operand" "rI08")] 3405 + UNSPECV_CMPXCHG_1))] 3406 + "TARGET_ATOMIC_HARD_CAS" 3407 +{FAIL;} 3408 +) 3409 + 3410 ;; The QIHImode llcs patterns modify the address register of the memory 3411 ;; operand. In order to express that, we have to open code the memory 3412 ;; operand. Initially the insn is expanded like every other atomic insn 3413 diff -ru gcc-9.4.0.orig/gcc/config/sh/t-sh gcc-9.4.0/gcc/config/sh/t-sh 3414 --- gcc-9.4.0.orig/gcc/config/sh/t-sh 2021-06-01 09:53:04.636473777 +0200 3415 +++ gcc-9.4.0/gcc/config/sh/t-sh 2023-06-13 00:16:43.410074370 +0200 3416 @@ -50,7 +50,8 @@ 3417 m2e,m3e,m4-single-only,m4-100-single-only,m4-200-single-only,m4-300-single-only,m4a-single-only \ 3418 m2a-single,m2a-single-only \ 3419 m4-single,m4-100-single,m4-200-single,m4-300-single,m4a-single \ 3420 - m4,m4-100,m4-200,m4-300,m4a; do \ 3421 + m4,m4-100,m4-200,m4-300,m4a \ 3422 + mj2; do \ 3423 subst= ; \ 3424 for lib in `echo $$abi|tr , ' '` ; do \ 3425 if test "`echo $$multilibs|sed s/$$lib//`" != "$$multilibs"; then \ 3426 @@ -63,9 +64,9 @@ 3427 3428 # SH1 and SH2A support big endian only. 3429 ifeq ($(DEFAULT_ENDIAN),ml) 3430 -MULTILIB_EXCEPTIONS = m1 ml/m1 m2a* ml/m2a* $(TM_MULTILIB_EXCEPTIONS_CONFIG) 3431 +MULTILIB_EXCEPTIONS = m1 ml/m1 m2a* ml/m2a* ml/mj2 $(TM_MULTILIB_EXCEPTIONS_CONFIG) 3432 else 3433 -MULTILIB_EXCEPTIONS = ml/m1 ml/m2a* $(TM_MULTILIB_EXCEPTIONS_CONFIG) 3434 +MULTILIB_EXCEPTIONS = ml/m1 ml/m2a* ml/mj2 $(TM_MULTILIB_EXCEPTIONS_CONFIG) 3435 endif 3436 3437 MULTILIB_OSDIRNAMES = \ 3438 @@ -87,7 +88,8 @@ 3439 m4a-single-only=!m4a-single-only $(OTHER_ENDIAN)/m4a-single-only=!$(OTHER_ENDIAN)/m4a-single-only \ 3440 m4a-single=!m4a-single $(OTHER_ENDIAN)/m4a-single=!$(OTHER_ENDIAN)/m4a-single \ 3441 m4a=!m4a $(OTHER_ENDIAN)/m4a=!$(OTHER_ENDIAN)/m4a \ 3442 - m4al=!m4al $(OTHER_ENDIAN)/m4al=!$(OTHER_ENDIAN)/m4al 3443 + m4al=!m4al $(OTHER_ENDIAN)/m4al=!$(OTHER_ENDIAN)/m4al \ 3444 + mj2=!j2 3445 3446 $(out_object_file): gt-sh.h 3447 gt-sh.h : s-gtype ; @true 3448 diff -ru gcc-9.4.0.orig/gcc/config.gcc gcc-9.4.0/gcc/config.gcc 3449 --- gcc-9.4.0.orig/gcc/config.gcc 2021-06-01 09:53:04.472471735 +0200 3450 +++ gcc-9.4.0/gcc/config.gcc 2023-06-13 00:16:43.405074370 +0200 3451 @@ -536,7 +536,7 @@ 3452 extra_headers="s390intrin.h htmintrin.h htmxlintrin.h vecintrin.h" 3453 ;; 3454 # Note the 'l'; we need to be able to match e.g. "shle" or "shl". 3455 -sh[123456789lbe]*-*-* | sh-*-*) 3456 +sh[123456789lbej]*-*-* | sh-*-*) 3457 cpu_type=sh 3458 extra_options="${extra_options} fused-madd.opt" 3459 extra_objs="${extra_objs} sh_treg_combine.o sh-mem.o sh_optimize_sett_clrt.o" 3460 @@ -2853,18 +2853,18 @@ 3461 extra_options="${extra_options} s390/tpf.opt" 3462 tmake_file="${tmake_file} s390/t-s390" 3463 ;; 3464 -sh-*-elf* | sh[12346l]*-*-elf* | \ 3465 - sh-*-linux* | sh[2346lbe]*-*-linux* | \ 3466 +sh-*-elf* | sh[12346lj]*-*-elf* | \ 3467 + sh-*-linux* | sh[2346lbej]*-*-linux* | \ 3468 sh-*-netbsdelf* | shl*-*-netbsdelf*) 3469 tmake_file="${tmake_file} sh/t-sh sh/t-elf" 3470 if test x${with_endian} = x; then 3471 case ${target} in 3472 - sh[1234]*be-*-* | sh[1234]*eb-*-*) with_endian=big ;; 3473 + sh[j1234]*be-*-* | sh[j1234]*eb-*-*) with_endian=big ;; 3474 shbe-*-* | sheb-*-*) with_endian=big,little ;; 3475 sh[1234]l* | sh[34]*-*-linux*) with_endian=little ;; 3476 shl* | sh*-*-linux* | \ 3477 sh-superh-elf) with_endian=little,big ;; 3478 - sh[1234]*-*-*) with_endian=big ;; 3479 + sh[j1234]*-*-*) with_endian=big ;; 3480 *) with_endian=big,little ;; 3481 esac 3482 fi 3483 @@ -2931,6 +2931,7 @@ 3484 sh2a_nofpu*) sh_cpu_target=sh2a-nofpu ;; 3485 sh2a*) sh_cpu_target=sh2a ;; 3486 sh2e*) sh_cpu_target=sh2e ;; 3487 + shj2*) sh_cpu_target=shj2;; 3488 sh2*) sh_cpu_target=sh2 ;; 3489 *) sh_cpu_target=sh1 ;; 3490 esac 3491 @@ -2952,7 +2953,7 @@ 3492 sh2a-single-only | sh2a-single | sh2a-nofpu | sh2a | \ 3493 sh4a-single-only | sh4a-single | sh4a-nofpu | sh4a | sh4al | \ 3494 sh4-single-only | sh4-single | sh4-nofpu | sh4 | sh4-300 | \ 3495 - sh3e | sh3 | sh2e | sh2 | sh1) ;; 3496 + sh3e | sh3 | sh2e | sh2 | sh1 | shj2) ;; 3497 "") sh_cpu_default=${sh_cpu_target} ;; 3498 *) echo "with_cpu=$with_cpu not supported"; exit 1 ;; 3499 esac 3500 @@ -2961,9 +2962,9 @@ 3501 case ${target} in 3502 sh[1234]*) sh_multilibs=${sh_cpu_target} ;; 3503 sh-superh-*) sh_multilibs=m4,m4-single,m4-single-only,m4-nofpu ;; 3504 - sh*-*-linux*) sh_multilibs=m1,m2,m2a,m3e,m4 ;; 3505 + sh*-*-linux*) sh_multilibs=m1,m2,m2a,m3e,m4,mj2 ;; 3506 sh*-*-netbsd*) sh_multilibs=m3,m3e,m4 ;; 3507 - *) sh_multilibs=m1,m2,m2e,m4,m4-single,m4-single-only,m2a,m2a-single ;; 3508 + *) sh_multilibs=m1,m2,m2e,m4,m4-single,m4-single-only,m2a,m2a-single,mj2 ;; 3509 esac 3510 if test x$with_fp = xno; then 3511 sh_multilibs="`echo $sh_multilibs|sed -e s/m4/sh4-nofpu/ -e s/,m4-[^,]*//g -e s/,m[23]e// -e s/m2a,m2a-single/m2a-nofpu/ -e s/m5-..m....,//g`" 3512 @@ -2978,7 +2979,8 @@ 3513 m1 | m2 | m2e | m3 | m3e | \ 3514 m4 | m4-single | m4-single-only | m4-nofpu | m4-300 |\ 3515 m4a | m4a-single | m4a-single-only | m4a-nofpu | m4al | \ 3516 - m2a | m2a-single | m2a-single-only | m2a-nofpu) 3517 + m2a | m2a-single | m2a-single-only | m2a-nofpu | \ 3518 + mj2) 3519 # TM_MULTILIB_CONFIG is used by t-sh for the non-endian multilib definition 3520 # It is passed to MULTIILIB_OPTIONS verbatim. 3521 TM_MULTILIB_CONFIG="${TM_MULTILIB_CONFIG}/${sh_multilib}" 3522 @@ -2995,7 +2997,7 @@ 3523 done 3524 TM_MULTILIB_CONFIG=`echo $TM_MULTILIB_CONFIG | sed 's:^/::'` 3525 if test x${enable_incomplete_targets} = xyes ; then 3526 - tm_defines="$tm_defines SUPPORT_SH1=1 SUPPORT_SH2E=1 SUPPORT_SH4=1 SUPPORT_SH4_SINGLE=1 SUPPORT_SH2A=1 SUPPORT_SH2A_SINGLE=1" 3527 + tm_defines="$tm_defines SUPPORT_SH1=1 SUPPORT_SH2E=1 SUPPORT_SH4=1 SUPPORT_SH4_SINGLE=1 SUPPORT_SH2A=1 SUPPORT_SH2A_SINGLE=1 SUPPORT_SHJ2=1" 3528 fi 3529 tm_file="$tm_file ./sysroot-suffix.h" 3530 tmake_file="$tmake_file t-sysroot-suffix" 3531 @@ -4801,6 +4803,8 @@ 3532 ;; 3533 m4a | m4a-single | m4a-single-only | m4a-nofpu | m4al) 3534 ;; 3535 + mj2) 3536 + ;; 3537 *) 3538 echo "Unknown CPU used in --with-cpu=$with_cpu, known values:" 1>&2 3539 echo "m1 m2 m2e m3 m3e m4 m4-single m4-single-only m4-nofpu" 1>&2 3540 @@ -5028,7 +5032,7 @@ 3541 tmake_file="${cpu_type}/t-${cpu_type} ${tmake_file}" 3542 ;; 3543 3544 - sh[123456ble]*-*-* | sh-*-*) 3545 + sh[123456blej]*-*-* | sh-*-*) 3546 c_target_objs="${c_target_objs} sh-c.o" 3547 cxx_target_objs="${cxx_target_objs} sh-c.o" 3548 ;; 3549 Only in gcc-9.4.0/gcc: config.gcc.orig 3550 diff -ru gcc-9.4.0.orig/gcc/configure gcc-9.4.0/gcc/configure 3551 --- gcc-9.4.0.orig/gcc/configure 2021-06-01 09:53:40.596921533 +0200 3552 +++ gcc-9.4.0/gcc/configure 2023-06-13 00:16:43.420074369 +0200 3553 @@ -29389,6 +29389,15 @@ 3554 withval=$with_long_double_128; gcc_cv_target_ldbl128="$with_long_double_128" 3555 else 3556 3557 + case "$target" in 3558 + s390*-*-linux-musl*) 3559 + gcc_cv_target_ldbl128=yes 3560 + ;; 3561 + powerpc*-*-linux-musl*) 3562 + gcc_cv_target_ldbl128=no 3563 + ;; 3564 + *) 3565 + 3566 if test $glibc_version_major -gt 2 \ 3567 || ( test $glibc_version_major -eq 2 && test $glibc_version_minor -ge 4 ); then : 3568 gcc_cv_target_ldbl128=yes 3569 @@ -29400,6 +29409,10 @@ 3570 && gcc_cv_target_ldbl128=yes 3571 3572 fi 3573 + 3574 + ;; 3575 + esac 3576 + 3577 fi 3578 3579 ;; 3580 diff -ru gcc-9.4.0.orig/gcc/configure.ac gcc-9.4.0/gcc/configure.ac 3581 --- gcc-9.4.0.orig/gcc/configure.ac 2021-06-01 09:53:04.664474126 +0200 3582 +++ gcc-9.4.0/gcc/configure.ac 2023-06-13 00:16:43.422074369 +0200 3583 @@ -6024,13 +6024,25 @@ 3584 AC_ARG_WITH(long-double-128, 3585 [AS_HELP_STRING([--with-long-double-128], 3586 [use 128-bit long double by default])], 3587 - gcc_cv_target_ldbl128="$with_long_double_128", 3588 + gcc_cv_target_ldbl128="$with_long_double_128", [ 3589 + case "$target" in 3590 + s390*-*-linux-musl*) 3591 + gcc_cv_target_ldbl128=yes 3592 + ;; 3593 + powerpc*-*-linux-musl*) 3594 + gcc_cv_target_ldbl128=no 3595 + ;; 3596 + *)] 3597 [GCC_GLIBC_VERSION_GTE_IFELSE([2], [4], [gcc_cv_target_ldbl128=yes], [ 3598 [gcc_cv_target_ldbl128=no 3599 grep '^[ ]*#[ ]*define[ ][ ]*__LONG_DOUBLE_MATH_OPTIONAL' \ 3600 $target_header_dir/bits/wordsize.h > /dev/null 2>&1 \ 3601 && gcc_cv_target_ldbl128=yes 3602 - ]])]) 3603 + ]])] 3604 + [ 3605 + ;; 3606 + esac 3607 + ]) 3608 ;; 3609 esac 3610 if test x$gcc_cv_target_ldbl128 = xyes; then 3611 Only in gcc-9.4.0/gcc: configure.ac.orig 3612 Only in gcc-9.4.0/gcc: configure.orig 3613 diff -ru gcc-9.4.0.orig/gcc/gcc.c gcc-9.4.0/gcc/gcc.c 3614 --- gcc-9.4.0.orig/gcc/gcc.c 2021-06-01 09:53:04.800475820 +0200 3615 +++ gcc-9.4.0/gcc/gcc.c 2023-06-13 00:16:43.428074369 +0200 3616 @@ -878,7 +878,8 @@ 3617 #ifndef LINK_SSP_SPEC 3618 #ifdef TARGET_LIBC_PROVIDES_SSP 3619 #define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \ 3620 - "|fstack-protector-strong|fstack-protector-explicit:}" 3621 + "|fstack-protector-strong|fstack-protector-explicit" \ 3622 + ":-lssp_nonshared}" 3623 #else 3624 #define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \ 3625 "|fstack-protector-strong|fstack-protector-explicit" \ 3626 @@ -907,7 +908,7 @@ 3627 #define NO_FPIE_AND_FPIC_SPEC NO_FPIE_SPEC "|" NO_FPIC_SPEC 3628 #define FPIE_OR_FPIC_SPEC NO_FPIE_AND_FPIC_SPEC ":;" 3629 #else 3630 -#define PIE_SPEC "pie" 3631 +#define PIE_SPEC "pie|static-pie" 3632 #define FPIE1_SPEC "fpie" 3633 #define NO_FPIE1_SPEC FPIE1_SPEC ":;" 3634 #define FPIE2_SPEC "fPIE" 3635 @@ -931,12 +932,12 @@ 3636 #ifndef LINK_PIE_SPEC 3637 #ifdef HAVE_LD_PIE 3638 #ifndef LD_PIE_SPEC 3639 -#define LD_PIE_SPEC "-pie" 3640 +#define LD_PIE_SPEC "-pie %{static-pie:-static} %{static|static-pie:--no-dynamic-linker -z text -Bsymbolic}" 3641 #endif 3642 #else 3643 #define LD_PIE_SPEC "" 3644 #endif 3645 -#define LINK_PIE_SPEC "%{static|shared|r:;" PIE_SPEC ":" LD_PIE_SPEC "} " 3646 +#define LINK_PIE_SPEC "%{shared|r:;" PIE_SPEC ":" LD_PIE_SPEC "} " 3647 #endif 3648 3649 #ifndef LINK_BUILDID_SPEC 3650 Only in gcc-9.4.0.orig/libatomic: .gitignore 3651 Only in gcc-9.4.0/libatomic: .testsuite.orig 3652 Only in gcc-9.4.0/libatomic/testsuite: .lib.orig 3653 diff -ru gcc-9.4.0.orig/libatomic/testsuite/Makefile.am gcc-9.4.0/libatomic/testsuite/Makefile.am 3654 --- gcc-9.4.0.orig/libatomic/testsuite/Makefile.am 2021-06-01 09:53:06.280494249 +0200 3655 +++ gcc-9.4.0/libatomic/testsuite/Makefile.am 2023-06-13 00:16:43.400074370 +0200 3656 @@ -11,3 +11,9 @@ 3657 _RUNTEST = $(shell if test -f $(top_srcdir)/../dejagnu/runtest; then \ 3658 echo $(top_srcdir)/../dejagnu/runtest; else echo runtest; fi) 3659 RUNTEST = $(_RUNTEST) $(AM_RUNTESTFLAGS) 3660 + 3661 +EXTRA_DEJAGNU_SITE_CONFIG = extra.exp 3662 + 3663 +extra.exp: 3664 + echo 'set BUILD_CC "$(CC)"' > $@.tmp 3665 + mv $@.tmp $@ 3666 diff -ru gcc-9.4.0.orig/libatomic/testsuite/Makefile.in gcc-9.4.0/libatomic/testsuite/Makefile.in 3667 --- gcc-9.4.0.orig/libatomic/testsuite/Makefile.in 2021-06-01 09:53:06.280494249 +0200 3668 +++ gcc-9.4.0/libatomic/testsuite/Makefile.in 2023-06-13 00:16:43.400074370 +0200 3669 @@ -277,6 +277,7 @@ 3670 echo $(top_srcdir)/../dejagnu/runtest; else echo runtest; fi) 3671 3672 RUNTEST = $(_RUNTEST) $(AM_RUNTESTFLAGS) 3673 +EXTRA_DEJAGNU_SITE_CONFIG = extra.exp 3674 all: all-am 3675 3676 .SUFFIXES: 3677 @@ -484,6 +485,10 @@ 3678 .PRECIOUS: Makefile 3679 3680 3681 +extra.exp: 3682 + echo 'set BUILD_CC "$(CC)"' > $@.tmp 3683 + mv $@.tmp $@ 3684 + 3685 # Tell versions [3.59,3.63) of GNU make to not export all variables. 3686 # Otherwise a system limit (for SysV at least) may be exceeded. 3687 .NOEXPORT: 3688 diff -ru gcc-9.4.0.orig/libatomic/testsuite/lib/libatomic.exp gcc-9.4.0/libatomic/testsuite/lib/libatomic.exp 3689 --- gcc-9.4.0.orig/libatomic/testsuite/lib/libatomic.exp 2021-06-01 09:53:06.280494249 +0200 3690 +++ gcc-9.4.0/libatomic/testsuite/lib/libatomic.exp 2023-06-13 00:16:43.401074370 +0200 3691 @@ -77,6 +77,7 @@ 3692 global ALWAYS_CFLAGS 3693 global CFLAGS 3694 global TOOL_EXECUTABLE TOOL_OPTIONS 3695 + global BUILD_CC 3696 global GCC_UNDER_TEST 3697 global TESTING_IN_BUILD_TREE 3698 global target_triplet 3699 @@ -92,6 +93,8 @@ 3700 if ![info exists GCC_UNDER_TEST] then { 3701 if [info exists TOOL_EXECUTABLE] { 3702 set GCC_UNDER_TEST $TOOL_EXECUTABLE 3703 + } elseif [info exists BUILD_CC] { 3704 + set GCC_UNDER_TEST $BUILD_CC 3705 } else { 3706 set GCC_UNDER_TEST "[find_gcc]" 3707 } 3708 Only in gcc-9.4.0/libgcc: .config.orig 3709 Only in gcc-9.4.0/libgcc/config: .m68k.orig 3710 diff -ru gcc-9.4.0.orig/libgcc/config/m68k/linux-unwind.h gcc-9.4.0/libgcc/config/m68k/linux-unwind.h 3711 --- gcc-9.4.0.orig/libgcc/config/m68k/linux-unwind.h 2021-06-01 09:53:06.368495345 +0200 3712 +++ gcc-9.4.0/libgcc/config/m68k/linux-unwind.h 2023-06-13 00:16:43.422074369 +0200 3713 @@ -37,7 +37,7 @@ 3714 stack_t uc_stack; 3715 mcontext_t uc_mcontext; 3716 unsigned long uc_filler[80]; 3717 - __sigset_t uc_sigmask; 3718 + sigset_t uc_sigmask; 3719 }; 3720 3721 #define MD_FALLBACK_FRAME_STATE_FOR m68k_fallback_frame_state 3722 Only in gcc-9.4.0/libgcc/config: t-gthr-noweak 3723 diff -ru gcc-9.4.0.orig/libgcc/config.host gcc-9.4.0/libgcc/config.host 3724 --- gcc-9.4.0.orig/libgcc/config.host 2021-06-01 09:53:06.328494847 +0200 3725 +++ gcc-9.4.0/libgcc/config.host 2023-06-13 00:16:43.429074369 +0200 3726 @@ -1480,3 +1480,10 @@ 3727 tm_file="${tm_file} aarch64/value-unwind.h" 3728 ;; 3729 esac 3730 + 3731 +case ${host} in 3732 +*-*-musl*) 3733 + # The gthr weak references are unsafe with static linking 3734 + tmake_file="$tmake_file t-gthr-noweak" 3735 + ;; 3736 +esac 3737 Only in gcc-9.4.0/libgcc: config.host.orig 3738 Only in gcc-9.4.0/libgomp: .testsuite.orig 3739 diff -ru gcc-9.4.0.orig/libgomp/configure.tgt gcc-9.4.0/libgomp/configure.tgt 3740 --- gcc-9.4.0.orig/libgomp/configure.tgt 2021-06-01 09:53:06.604498283 +0200 3741 +++ gcc-9.4.0/libgomp/configure.tgt 2023-06-13 00:16:43.429074369 +0200 3742 @@ -17,6 +17,9 @@ 3743 *-*-k*bsd*-gnu*) 3744 ;; 3745 3746 + *-*-musl*) 3747 + ;; 3748 + 3749 *-*-linux* | *-*-gnu*) 3750 XCFLAGS="${XCFLAGS} -ftls-model=initial-exec -DUSING_INITIAL_EXEC_TLS" 3751 ;; 3752 Only in gcc-9.4.0/libgomp/testsuite: .lib.orig 3753 diff -ru gcc-9.4.0.orig/libgomp/testsuite/Makefile.am gcc-9.4.0/libgomp/testsuite/Makefile.am 3754 --- gcc-9.4.0.orig/libgomp/testsuite/Makefile.am 2021-06-01 09:53:06.608498335 +0200 3755 +++ gcc-9.4.0/libgomp/testsuite/Makefile.am 2023-06-13 00:16:43.401074370 +0200 3756 @@ -12,6 +12,12 @@ 3757 echo $(top_srcdir)/../dejagnu/runtest; else echo runtest; fi) 3758 RUNTESTDEFAULTFLAGS = --tool $$tool --srcdir $$srcdir 3759 3760 +EXTRA_DEJAGNU_SITE_CONFIG = extra.exp 3761 + 3762 +extra.exp: 3763 + echo 'set BUILD_CC "$(CC)"' > $@.tmp 3764 + mv $@.tmp $@ 3765 + 3766 # Instead of directly in ../testsuite/libgomp-test-support.exp.in, the 3767 # following variables have to be "routed through" this Makefile, for expansion 3768 # of the several (Makefile) variables used therein. 3769 diff -ru gcc-9.4.0.orig/libgomp/testsuite/Makefile.in gcc-9.4.0/libgomp/testsuite/Makefile.in 3770 --- gcc-9.4.0.orig/libgomp/testsuite/Makefile.in 2021-06-01 09:53:40.616921782 +0200 3771 +++ gcc-9.4.0/libgomp/testsuite/Makefile.in 2023-06-13 00:16:43.401074370 +0200 3772 @@ -303,6 +303,7 @@ 3773 echo $(top_srcdir)/../dejagnu/runtest; else echo runtest; fi) 3774 3775 RUNTESTDEFAULTFLAGS = --tool $$tool --srcdir $$srcdir 3776 +EXTRA_DEJAGNU_SITE_CONFIG = extra.exp 3777 all: all-am 3778 3779 .SUFFIXES: 3780 @@ -464,6 +465,10 @@ 3781 .PRECIOUS: Makefile 3782 3783 3784 +extra.exp: 3785 + echo 'set BUILD_CC "$(CC)"' > $@.tmp 3786 + mv $@.tmp $@ 3787 + 3788 # Instead of directly in ../testsuite/libgomp-test-support.exp.in, the 3789 # following variables have to be "routed through" this Makefile, for expansion 3790 # of the several (Makefile) variables used therein. 3791 diff -ru gcc-9.4.0.orig/libgomp/testsuite/lib/libgomp.exp gcc-9.4.0/libgomp/testsuite/lib/libgomp.exp 3792 --- gcc-9.4.0.orig/libgomp/testsuite/lib/libgomp.exp 2021-06-01 09:53:06.608498335 +0200 3793 +++ gcc-9.4.0/libgomp/testsuite/lib/libgomp.exp 2023-06-13 00:16:43.402074370 +0200 3794 @@ -68,6 +68,7 @@ 3795 global ALWAYS_CFLAGS 3796 global CFLAGS 3797 global TOOL_EXECUTABLE TOOL_OPTIONS 3798 + global BUILD_CC 3799 global GCC_UNDER_TEST 3800 global TESTING_IN_BUILD_TREE 3801 global target_triplet 3802 @@ -90,6 +91,8 @@ 3803 if ![info exists GCC_UNDER_TEST] then { 3804 if [info exists TOOL_EXECUTABLE] { 3805 set GCC_UNDER_TEST $TOOL_EXECUTABLE 3806 + } elseif [info exists BUILD_CC] { 3807 + set GCC_UNDER_TEST $BUILD_CC 3808 } else { 3809 set GCC_UNDER_TEST "[find_gcc]" 3810 } 3811 Only in gcc-9.4.0/libitm: .testsuite.orig 3812 diff -ru gcc-9.4.0.orig/libitm/configure.tgt gcc-9.4.0/libitm/configure.tgt 3813 --- gcc-9.4.0.orig/libitm/configure.tgt 2021-06-01 09:53:06.648498833 +0200 3814 +++ gcc-9.4.0/libitm/configure.tgt 2023-06-13 00:16:43.429074369 +0200 3815 @@ -31,6 +31,9 @@ 3816 if test "$gcc_cv_have_tls" = yes ; then 3817 case "${target}" in 3818 3819 + *-*-musl*) 3820 + ;; 3821 + 3822 # For x86, we use slots in the TCB head for most of our TLS. 3823 # The setup of those slots in beginTransaction can afford to 3824 # use the global-dynamic model. 3825 Only in gcc-9.4.0/libitm/testsuite: .lib.orig 3826 diff -ru gcc-9.4.0.orig/libitm/testsuite/Makefile.am gcc-9.4.0/libitm/testsuite/Makefile.am 3827 --- gcc-9.4.0.orig/libitm/testsuite/Makefile.am 2021-06-01 09:53:06.648498833 +0200 3828 +++ gcc-9.4.0/libitm/testsuite/Makefile.am 2023-06-13 00:16:43.402074370 +0200 3829 @@ -11,3 +11,9 @@ 3830 _RUNTEST = $(shell if test -f $(top_srcdir)/../dejagnu/runtest; then \ 3831 echo $(top_srcdir)/../dejagnu/runtest; else echo runtest; fi) 3832 RUNTEST = $(_RUNTEST) $(AM_RUNTESTFLAGS) 3833 + 3834 +EXTRA_DEJAGNU_SITE_CONFIG = extra.exp 3835 + 3836 +extra.exp: 3837 + echo 'set BUILD_CC "$(CC)"' > $@.tmp 3838 + mv $@.tmp $@ 3839 diff -ru gcc-9.4.0.orig/libitm/testsuite/Makefile.in gcc-9.4.0/libitm/testsuite/Makefile.in 3840 --- gcc-9.4.0.orig/libitm/testsuite/Makefile.in 2021-06-01 09:53:40.624921881 +0200 3841 +++ gcc-9.4.0/libitm/testsuite/Makefile.in 2023-06-13 00:16:43.402074370 +0200 3842 @@ -285,6 +285,7 @@ 3843 echo $(top_srcdir)/../dejagnu/runtest; else echo runtest; fi) 3844 3845 RUNTEST = $(_RUNTEST) $(AM_RUNTESTFLAGS) 3846 +EXTRA_DEJAGNU_SITE_CONFIG = extra.exp 3847 all: all-am 3848 3849 .SUFFIXES: 3850 @@ -492,6 +493,10 @@ 3851 .PRECIOUS: Makefile 3852 3853 3854 +extra.exp: 3855 + echo 'set BUILD_CC "$(CC)"' > $@.tmp 3856 + mv $@.tmp $@ 3857 + 3858 # Tell versions [3.59,3.63) of GNU make to not export all variables. 3859 # Otherwise a system limit (for SysV at least) may be exceeded. 3860 .NOEXPORT: 3861 diff -ru gcc-9.4.0.orig/libitm/testsuite/lib/libitm.exp gcc-9.4.0/libitm/testsuite/lib/libitm.exp 3862 --- gcc-9.4.0.orig/libitm/testsuite/lib/libitm.exp 2021-06-01 09:53:06.648498833 +0200 3863 +++ gcc-9.4.0/libitm/testsuite/lib/libitm.exp 2023-06-13 00:16:43.402074370 +0200 3864 @@ -77,6 +77,7 @@ 3865 global ALWAYS_CFLAGS 3866 global CFLAGS 3867 global TOOL_EXECUTABLE TOOL_OPTIONS 3868 + global BUILD_CC 3869 global GCC_UNDER_TEST 3870 global TESTING_IN_BUILD_TREE 3871 global target_triplet 3872 @@ -92,6 +93,8 @@ 3873 if ![info exists GCC_UNDER_TEST] then { 3874 if [info exists TOOL_EXECUTABLE] { 3875 set GCC_UNDER_TEST $TOOL_EXECUTABLE 3876 + } elseif [info exists BUILD_CC] { 3877 + set GCC_UNDER_TEST $BUILD_CC 3878 } else { 3879 set GCC_UNDER_TEST "[find_gcc]" 3880 } 3881 Only in gcc-9.4.0/libstdc++-v3: .src.orig 3882 Only in gcc-9.4.0/libstdc++-v3/src: .c++11.orig 3883 diff -ru gcc-9.4.0.orig/libstdc++-v3/src/c++11/futex.cc gcc-9.4.0/libstdc++-v3/src/c++11/futex.cc 3884 --- gcc-9.4.0.orig/libstdc++-v3/src/c++11/futex.cc 2021-06-01 09:53:06.880501720 +0200 3885 +++ gcc-9.4.0/libstdc++-v3/src/c++11/futex.cc 2023-06-13 00:16:43.432074369 +0200 3886 @@ -61,7 +61,15 @@ 3887 struct timeval tv; 3888 gettimeofday (&tv, NULL); 3889 // Convert the absolute timeout value to a relative timeout 3890 +#if defined(SYS_futex_time64) && SYS_futex_time64 != SYS_futex 3891 + struct 3892 + { 3893 + long tv_sec; 3894 + long tv_nsec; 3895 + } rt; 3896 +#else 3897 struct timespec rt; 3898 +#endif 3899 rt.tv_sec = __s.count() - tv.tv_sec; 3900 rt.tv_nsec = __ns.count() - tv.tv_usec * 1000; 3901 if (rt.tv_nsec < 0) 3902 Only in gcc-9.4.0/libvtv: .testsuite.orig 3903 Only in gcc-9.4.0/libvtv/testsuite: .lib.orig 3904 diff -ru gcc-9.4.0.orig/libvtv/testsuite/Makefile.am gcc-9.4.0/libvtv/testsuite/Makefile.am 3905 --- gcc-9.4.0.orig/libvtv/testsuite/Makefile.am 2021-06-01 09:53:07.048503814 +0200 3906 +++ gcc-9.4.0/libvtv/testsuite/Makefile.am 2023-06-13 00:16:43.402074370 +0200 3907 @@ -11,3 +11,9 @@ 3908 _RUNTEST = $(shell if test -f $(top_srcdir)/../dejagnu/runtest; then \ 3909 echo $(top_srcdir)/../dejagnu/runtest; else echo runtest; fi) 3910 RUNTEST = $(_RUNTEST) $(AM_RUNTESTFLAGS) 3911 + 3912 +EXTRA_DEJAGNU_SITE_CONFIG = extra.exp 3913 + 3914 +extra.exp: 3915 + echo 'set BUILD_CC "$(CC)"' > $@.tmp 3916 + mv $@.tmp $@ 3917 diff -ru gcc-9.4.0.orig/libvtv/testsuite/Makefile.in gcc-9.4.0/libvtv/testsuite/Makefile.in 3918 --- gcc-9.4.0.orig/libvtv/testsuite/Makefile.in 2021-06-01 09:53:07.048503814 +0200 3919 +++ gcc-9.4.0/libvtv/testsuite/Makefile.in 2023-06-13 00:16:43.403074370 +0200 3920 @@ -280,6 +280,7 @@ 3921 echo $(top_srcdir)/../dejagnu/runtest; else echo runtest; fi) 3922 3923 RUNTEST = $(_RUNTEST) $(AM_RUNTESTFLAGS) 3924 +EXTRA_DEJAGNU_SITE_CONFIG = extra.exp 3925 all: all-am 3926 3927 .SUFFIXES: 3928 @@ -487,6 +488,10 @@ 3929 .PRECIOUS: Makefile 3930 3931 3932 +extra.exp: 3933 + echo 'set BUILD_CC "$(CC)"' > $@.tmp 3934 + mv $@.tmp $@ 3935 + 3936 # Tell versions [3.59,3.63) of GNU make to not export all variables. 3937 # Otherwise a system limit (for SysV at least) may be exceeded. 3938 .NOEXPORT: 3939 diff -ru gcc-9.4.0.orig/libvtv/testsuite/lib/libvtv.exp gcc-9.4.0/libvtv/testsuite/lib/libvtv.exp 3940 --- gcc-9.4.0.orig/libvtv/testsuite/lib/libvtv.exp 2021-06-01 09:53:07.048503814 +0200 3941 +++ gcc-9.4.0/libvtv/testsuite/lib/libvtv.exp 2023-06-13 00:16:43.403074370 +0200 3942 @@ -76,6 +76,7 @@ 3943 global ALWAYS_CFLAGS 3944 global CFLAGS 3945 global TOOL_EXECUTABLE TOOL_OPTIONS 3946 + global BUILD_CC 3947 global GCC_UNDER_TEST 3948 global TESTING_IN_BUILD_TREE 3949 global target_triplet 3950 @@ -91,6 +92,8 @@ 3951 if ![info exists GCC_UNDER_TEST] then { 3952 if [info exists TOOL_EXECUTABLE] { 3953 set GCC_UNDER_TEST $TOOL_EXECUTABLE 3954 + } elseif [info exists BUILD_CC] { 3955 + set GCC_UNDER_TEST $BUILD_CC 3956 } else { 3957 set GCC_UNDER_TEST "[find_gcc]" 3958 }