NetBSD Problem Report #57646

From www@netbsd.org  Sat Oct  7 11:19:58 2023
Return-Path: <www@netbsd.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id 69DC61A923A
	for <gnats-bugs@gnats.NetBSD.org>; Sat,  7 Oct 2023 11:19:58 +0000 (UTC)
Message-Id: <20231007111957.4481C1A923C@mollari.NetBSD.org>
Date: Sat,  7 Oct 2023 11:19:57 +0000 (UTC)
From: rokuyama.rk@gmail.com
Reply-To: rokuyama.rk@gmail.com
To: gnats-bugs@NetBSD.org
Subject: Import major vax toolchain fix by Kalvis Duckmanton
X-Send-Pr-Version: www-1.0

>Number:         57646
>Category:       port-vax
>Synopsis:       Import major vax toolchain fix by Kalvis Duckmanton
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    port-vax-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Oct 07 11:20:00 +0000 2023
>Last-Modified:  Tue Dec 19 12:25:01 +0000 2023
>Originator:     Rin Okuyama
>Release:        10.99.* and netbsd-10
>Organization:
Internet Initiative Japan Inc.
>Environment:
NetBSD vax.local 10.99.9 NetBSD 10.99.9 (GENERIC) #2: Mon Oct  2 23:35:08 JST 2023  rin@sakaizumii.local:/home/rin/src/sys/arch/vax/compile/GENERIC vax

NetBSD vax10.local 10.0_BETA NetBSD 10.0_BETA (GENERIC) #5: Tue Oct  3 19:38:54 JST 2023  rin@sakaizumii.local:/home/rin/src/sys/arch/vax/compile/GENERIC vax
>Description:
We have never had satisfying compilers for vax; lot of optimization hacks
are required in order to avoid miscompilation as well as ICE. Even with
these hacks, generated binaries sometimes misbehave. Unfortunately, new
vax backend introduced for us by GCC 12 does not resolve the problems.

The series of patches provided by Kalvis Duckmanton <kalvisd at gmail>
drastically change this situation:

- No ICE even if all of -O[01] hacks are removed.
- Full ATF run completes without kernel panic.
- No obviously-compiler-related problems detected by ATF:
    http://www.netbsd.org/~rin/vax/ (caution: huge files)
  Most of failures seem due to:
    (1) non-IEEE-754-compliant floating-point unit
    (2) no working TLS support
  and some are due to
    (3) MD bugs in kernel or libc
- pkgsrc/lang/perl5 builds natively.
- No regression observed by GCC test suite for x86_64.

I expect that we can eventually address ATF failures if we have a
working compiler.

Not only fixing GCC 12, Kalvis kindly ported his works to GCC 10 for
netbsd-10 branch.

Although the patches are clearly written, it still takes some time to
import them into external/gcc/dist in a sustainable form, since:

  (a) we already have lot of local changes, some of which are difficult
      to be upstreamed
  (b) some MI parts of GCC are touched by the patches (even though
      no regressions are observed at least for x86_64; see above)

Therefore, we import this work into external/gcc.old/dist at the moment,
with MI changes being enabled only for vax. This will be immediately
pulled up into netbsd-10 branch, and provided as a part of NetBSD 10.0
RC1 for tests. I believe it is useful both for users and developers.

I will commit the patch kit mostly as is; except for

  (i)  MI parts are protected by NB_FIX_VAX_BACKEND macro
  (ii) some trivial style fixes

This plan has been approved by Kalvis, mrg@, and martin@.

Also, all of -O[01] hacks are removed at the moment. GCC 12 may require
hacks for a while, but it turned out that GCC 12 should be treated
differently from older versions; a lot of new files need -O[01] flags,
while some may no longer require it. I will take a look later. Note that
these hacks are not required if Kalvis's patches for GCC 12 are applied.

doc/HACKS is also left as is, at the moment.
>How-To-Repeat:
See tons of -O[01] hacks for vax, several PRs for gcc/vax.
>Fix:
Described above.

>Audit-Trail:
From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/binutils/dist/gas/config
Date: Sat, 7 Oct 2023 11:26:09 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 11:26:09 UTC 2023

 Modified Files:
 	src/external/gpl3/binutils/dist/gas/config: tc-vax.c

 Log Message:
 binutils/gas: vax: Cherry-pick upstream commits for binutils-gdb/30715

 PR port-vax/57646: Import major vax toolchain fix by Kalvis Duckmanton

 (1/2) https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=8c8224dc1637a3e695c17e4c1026247196813c48
 ----
 commit 8c8224dc163
 Author: Kalvis Duckmanton <kalvisd at gmail>
 Date:   Sat Aug 12 14:27:00 2023 +0930

 PR30715, VAX: md_create_long_jump

     PR 30715
     * config/tc-vax.c (md_create_long_jump): Use pc-relative addressing.
     * testsuite/gas/vax/broken_word.d,
     * testsuite/gas/vax/broken_word.s: New test.
     * testsuite/gas/vax/vax.exp: Run it.
 ----

 (2/2) https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=33efa77ecf7b040973657408f92325a4db13b9e5
 ----
 commit 33efa77ecf7
 Author: Alan Modra <amodra at gmail>
 Date:   Mon Aug 14 17:05:01 2023 +0930

 Re: PR30715, VAX: md_create_long_jump

 Tidy comment formatting.
 ----


 To generate a diff of this commit:
 cvs rdiff -u -r1.15 -r1.16 \
     src/external/gpl3/binutils/dist/gas/config/tc-vax.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 11:57:01 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 11:57:01 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: elf.h vax.c vax.md

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [1/21]

 Save %r2..%r5 in the prologue of functions which call __builtin_eh_return().
 Implement the eh_return() instruction. Ensure that the CFA is correct


 To generate a diff of this commit:
 cvs rdiff -u -r1.11 -r1.12 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/elf.h \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.md
 cvs rdiff -u -r1.12 -r1.13 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 11:57:27 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 11:57:27 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: vax.c vax.md

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [2/21]

 Add a special case to the zero_extract instruction to handle the case
 where 32 bits are requested (i.e. the entire word). When printing a mask
 operand, avoid generating values that might overflow a 32 bit word.


 To generate a diff of this commit:
 cvs rdiff -u -r1.13 -r1.14 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.c
 cvs rdiff -u -r1.12 -r1.13 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.md

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 11:57:56 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 11:57:56 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: vax.c

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [3/21]

 Reduce expressions specifying an address of a 64 bit quantity to
 a sequence of assignments to temporary variables; this allows virtual
 registers to be inst antiated properly.


 To generate a diff of this commit:
 cvs rdiff -u -r1.14 -r1.15 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc
Date: Sat, 7 Oct 2023 11:58:31 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 11:58:31 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc: recog.c

 Log Message:
 gcc.old: PR port-vax/57646 patch provided by Kalvis Duckmanton [4/21]

 Constrain offsets within subregister expressions to be a multiple of
 the size of the data type requested. That is, offsets for a word sized
 (2 byte) subregister may only be multiples of 2.

 XXXRO: Hidden within ``#ifdef NB_FIX_VAX_BACKEND'' and enabled only for
 vax at the moment.


 To generate a diff of this commit:
 cvs rdiff -u -r1.11 -r1.12 src/external/gpl3/gcc.old/dist/gcc/recog.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc
Date: Sat, 7 Oct 2023 11:58:54 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 11:58:54 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc: dse.c

 Log Message:
 gcc.old: PR port-vax/57646 patch provided by Kalvis Duckmanton [5/21]

 Shift right by positive values that are less than HOST_BITS_PER_WIDE_INT
 to avoid illegal instruction exceptions on VAX.

 XXXRO: Hidden within ``#ifdef NB_FIX_VAX_BACKEND'' and enabled only for
 vax at the moment.


 To generate a diff of this commit:
 cvs rdiff -u -r1.13 -r1.14 src/external/gpl3/gcc.old/dist/gcc/dse.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc
Date: Sat, 7 Oct 2023 12:00:36 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:00:36 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc: function.c

 Log Message:
 gcc.old: PR port-vax/57646 patch provided by Kalvis Duckmanton [6/21]

 load the address operand of a SUBREG into a register to allow virtual
 registers to be instantiated

 XXXRO: Hidden within ``#ifdef NB_FIX_VAX_BACKEND'' and enabled only for
 vax at the moment.


 To generate a diff of this commit:
 cvs rdiff -u -r1.15 -r1.16 src/external/gpl3/gcc.old/dist/gcc/function.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 12:01:43 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:01:43 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: vax.md

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [7/21]

 Mark the output operands of the 'sbcdi3' instruction pattern as being
 written before the instruction has finished using the input operands.


 To generate a diff of this commit:
 cvs rdiff -u -r1.13 -r1.14 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.md

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 12:02:03 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:02:03 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: vax.c

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [8/21]

 Allow 64 bit operands addressed using post-increment addressing to be negated


 To generate a diff of this commit:
 cvs rdiff -u -r1.15 -r1.16 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc
Date: Sat, 7 Oct 2023 12:02:23 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:02:23 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc: reload.c

 Log Message:
 gcc.old: PR port-vax/57646 patch provided by Kalvis Duckmanton [9/21]

 A reload for the address of an operand's address should not use the same
 register as a reload of an operand's address if the two reloads are for
 different operands

 XXXRO: Hidden within ``#ifdef NB_FIX_VAX_BACKEND'' and enabled only for
 vax at the moment.


 To generate a diff of this commit:
 cvs rdiff -u -r1.11 -r1.12 src/external/gpl3/gcc.old/dist/gcc/reload.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/binutils/dist/gas/config
Date: Sat, 7 Oct 2023 12:02:50 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:02:50 UTC 2023

 Modified Files:
 	src/external/gpl3/binutils/dist/gas/config: tc-vax.c tc-vax.h

 Log Message:
 binutils/gas: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [10/21]

 Try not to emit relocations in the .eh_frame section


 To generate a diff of this commit:
 cvs rdiff -u -r1.16 -r1.17 \
     src/external/gpl3/binutils/dist/gas/config/tc-vax.c
 cvs rdiff -u -r1.9 -r1.10 src/external/gpl3/binutils/dist/gas/config/tc-vax.h

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/binutils/dist/gas/config
Date: Sat, 7 Oct 2023 12:04:09 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:04:09 UTC 2023

 Modified Files:
 	src/external/gpl3/binutils/dist/gas/config: tc-vax.c

 Log Message:
 binutils/gas: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [11/21]

 PR toolchain/43314: pc relative relocations are "off by 1*size" on vax

 Address http://gnats.netbsd.org/43314


 To generate a diff of this commit:
 cvs rdiff -u -r1.17 -r1.18 \
     src/external/gpl3/binutils/dist/gas/config/tc-vax.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 12:04:50 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:04:50 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: elf.h

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [12/21]

 PR toolchain/43314: pc relative relocations are "off by 1*size" on vax

 Address http://gnats.netbsd.org/43314


 To generate a diff of this commit:
 cvs rdiff -u -r1.12 -r1.13 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/elf.h

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc
Date: Sat, 7 Oct 2023 12:05:36 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:05:36 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc: rtlanal.c target.def targhooks.c
 	    targhooks.h
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: vax.c
 	src/external/gpl3/gcc.old/dist/gcc/doc: tm.texi tm.texi.in

 Log Message:
 gcc.old: PR port-vax/57646 patch provided by Kalvis Duckmanton [13/21]

 Bitfield instructions will generate a reserved operand fault if the
 operands are not reasonable (size > 32, position > 31 and size not
 zero and field in a register). GCC generates code to test for these
 conditions but in certain circumstances, the optimiser may decide
 that a bitfield extraction instruction is invariant and move it
 ahead of the instructions testing its arguments.

 Introduce a new target hook to indicate to GCC that a bitfield
 instruction may trap and update may_trap_p_1()

 XXXRO: Although this patch includes diffs outside gcc/config/vax,
 NFC for !TARGET_BITFIELD_MAY_TRAP_P, i.e., other than vax.


 To generate a diff of this commit:
 cvs rdiff -u -r1.13 -r1.14 src/external/gpl3/gcc.old/dist/gcc/rtlanal.c
 cvs rdiff -u -r1.9 -r1.10 src/external/gpl3/gcc.old/dist/gcc/target.def
 cvs rdiff -u -r1.11 -r1.12 src/external/gpl3/gcc.old/dist/gcc/targhooks.c \
     src/external/gpl3/gcc.old/dist/gcc/targhooks.h
 cvs rdiff -u -r1.16 -r1.17 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.c
 cvs rdiff -u -r1.11 -r1.12 src/external/gpl3/gcc.old/dist/gcc/doc/tm.texi
 cvs rdiff -u -r1.9 -r1.10 src/external/gpl3/gcc.old/dist/gcc/doc/tm.texi.in

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 12:07:37 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:07:37 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: vax.c

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [14/21]

 Add a TARGET_INIT_BUILTINS hook (required to be able to compile gfortran)


 To generate a diff of this commit:
 cvs rdiff -u -r1.17 -r1.18 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 12:07:59 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:07:59 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: vax.c

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [15/21]

 enable use of gas(1) directives to generate the CFI table.


 To generate a diff of this commit:
 cvs rdiff -u -r1.18 -r1.19 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 12:09:07 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:09:06 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: builtins.md

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [16/21]

 PR port-vax/50384: NetBSD/vax 7.0 gcc-4.8.4 gets ICE by SIGILL

 Fix for https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=50384
 as encountered in gcc 7 in NetBSD 7.

 VAX's FFS instruction as used in GCC's count_zero and ffssi2 instructions
 uses the Z flag to indicate whether a set bit was found or not; GCC expects
 the Z flag to consistently indicate whether the result is zero.


 To generate a diff of this commit:
 cvs rdiff -u -r1.11 -r1.12 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/builtins.md

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 12:09:28 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:09:28 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: builtins.md

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [17/20]

 Fix the __sync_lock_test_and_set() builtin


 To generate a diff of this commit:
 cvs rdiff -u -r1.12 -r1.13 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/builtins.md

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 12:10:02 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:10:02 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: vax.md

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [18/21]

 use the extzv instruction pattern for logical shifts right


 To generate a diff of this commit:
 cvs rdiff -u -r1.14 -r1.15 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.md

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 12:10:19 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:10:18 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: vax.md

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [19/21]

 If in PIC mode, and the source operand to insv is a memory reference,
 and the address of the memory location is an external symbol, load the
 address into a temporary register before expanding the instruction.


 To generate a diff of this commit:
 cvs rdiff -u -r1.15 -r1.16 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.md

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 12:10:38 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:10:38 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: vax.md

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [20/21]

 If in PIC mode, and the source operand to extv is a memory reference, and th
 e address of the memory location is an external symbol, load the address into a
 temporary register before expanding the instruction.


 To generate a diff of this commit:
 cvs rdiff -u -r1.16 -r1.17 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.md

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc/config/vax
Date: Sat, 7 Oct 2023 12:10:59 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:10:59 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc/config/vax: vax.md

 Log Message:
 gcc.old: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [21/21]

 Define separate instruction patterns for extzv for the cases where the fiel
 d width and offset happen to be a multiple of a byte or word.

 If in PIC mode, and the source operand to extzv is a memory
 reference, and the address of the memory location is an external
 symbol, load the address into a temporary register before expanding
 the instruction.

 Adjust the constraints to the zero_extract instruction pattern to
 disallow indexed source operands, as the VAX extzv instruction
 computes offsets based on the size of a byte (not a word or a
 longword)


 To generate a diff of this commit:
 cvs rdiff -u -r1.17 -r1.18 \
     src/external/gpl3/gcc.old/dist/gcc/config/vax/vax.md

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/tools/gcc
Date: Sat, 7 Oct 2023 12:12:58 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:12:58 UTC 2023

 Modified Files:
 	src/tools/gcc: Makefile

 Log Message:
 tools/gcc: Sprinkle NB_FIX_VAX_BACKEND for vax to enable gcc.old MI fixes

 PR port-vax/57646: Import major vax toolchain fix by Kalvis Duckmanton


 To generate a diff of this commit:
 cvs rdiff -u -r1.108 -r1.109 src/tools/gcc/Makefile

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/usr.bin/backend
Date: Sat, 7 Oct 2023 12:13:36 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:13:36 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/usr.bin/backend: Makefile

 Log Message:
 gcc.old: Sprinkle NB_FIX_VAX_BACKEND for vax to enable MI fixes

 PR port-vax/57646: Import major vax toolchain fix by Kalvis Duckmanton


 To generate a diff of this commit:
 cvs rdiff -u -r1.19 -r1.20 src/external/gpl3/gcc.old/usr.bin/backend/Makefile

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src
Date: Sat, 7 Oct 2023 12:15:55 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:15:54 UTC 2023

 Modified Files:
 	src/crypto/external/bsd/openssh/lib: Makefile
 	src/distrib/utils/x_ping: Makefile
 	src/external/apache2/argon2/lib/libargon2: Makefile.inc
 	src/external/bsd/jemalloc/lib: Makefile.inc
 	src/external/bsd/mdocml/lib/libmandoc: Makefile
 	src/external/gpl3/binutils.old/lib/libbfd: Makefile
 	src/external/gpl3/binutils/lib/libbfd: Makefile
 	src/external/gpl3/gcc.old/lib: Makefile.sanitizer
 	src/external/gpl3/gcc.old/lib/libasan: Makefile
 	src/external/gpl3/gcc.old/lib/liblsan: Makefile
 	src/external/gpl3/gcc.old/lib/libubsan: Makefile
 	src/external/gpl3/gcc.old/usr.bin/backend: Makefile
 	src/external/gpl3/gcc.old/usr.bin/cc1: Makefile
 	src/external/gpl3/gcc.old/usr.bin/cc1obj: Makefile
 	src/external/gpl3/gcc.old/usr.bin/cc1objplus: Makefile
 	src/external/gpl3/gcc.old/usr.bin/cc1plus: Makefile
 	src/external/gpl3/gcc.old/usr.bin/gcc: Makefile
 	src/external/gpl3/gcc.old/usr.bin/libdecnumber: Makefile
 	src/external/gpl3/gcc.old/usr.bin/lto-dump: Makefile
 	src/external/gpl3/gcc.old/usr.bin/lto1: Makefile
 	src/external/gpl3/gdb.old/lib/libdecnumber: Makefile
 	src/external/gpl3/gdb/lib/libdecnumber: Makefile
 	src/external/gpl3/gdb/lib/libgdb: Makefile
 	src/external/mit/xorg/lib/gallium: Makefile
 	src/external/mit/xorg/lib/gallium.old: Makefile
 	src/external/mit/xorg/lib/libX11: Makefile.libx11
 	src/games/gomoku: Makefile
 	src/games/phantasia: Makefile
 	src/lib/i18n_module/UTF7: Makefile
 	src/lib/libbz2: Makefile
 	src/lib/libc/gdtoa: Makefile.inc
 	src/lib/libcrypt: Makefile
 	src/libexec/ld.elf_so: Makefile
 	src/sbin/fsck_ffs: Makefile.common
 	src/sbin/fsdb: Makefile
 	src/sbin/newfs_ext2fs: Makefile
 	src/sbin/ping: Makefile
 	src/sys/arch/vax/conf: Makefile.vax
 	src/sys/lib/libsa: Makefile
 	src/sys/lib/libz: Makefile
 	src/sys/modules/lfs: Makefile
 	src/sys/rump/fs/lib/liblfs: Makefile
 	src/usr.sbin/mtrace: Makefile

 Log Message:
 Drop -O[01] hacks for vax; no longer necessary for patched GCC 10

 PR port-vax/57646: Import major vax toolchain fix by Kalvis Duckmanton

 XXXRO: GCC 12 may require hacks for a while, but it turned out that
 GCC 12 should be treated differently from older versions; a lot of new
 files need -O[01] flags, while some may no longer require it.

 I will take a look later.

 Note that these hacks are not required if Kalvis's patches for GCC 12
 are applied.

 Keep doc/HACKS entries for a while (will be sync with update for GCC 12).

 diff --git a/crypto/external/bsd/openssh/lib/Makefile b/crypto/external/bsd/openssh/lib/Makefile
 index 96a93f5e396..4e38be1b642 100644
 --- a/crypto/external/bsd/openssh/lib/Makefile
 +++ b/crypto/external/bsd/openssh/lib/Makefile
 @@ -117,12 +117,6 @@ COPTS.${f}.c+=	-Wno-pointer-sign
  # XXX
  COPTS.channels.c+=	-fno-strict-aliasing

 -# XXX
 -.if ${MACHINE} == "vax"
 -COPTS.poly1305.c+=	-O0
 -COPTS.umac.c+=		-O0
 -.endif
 -
  COPTS.hostfile.c+=	${CC_WNO_FORMAT_TRUNCATION}
  COPTS.sshkey.c+=	${CC_WNO_FORMAT_TRUNCATION}
  COPTS.cipher.c+=	-Wno-error=deprecated-declarations
 diff --git a/distrib/utils/x_ping/Makefile b/distrib/utils/x_ping/Makefile
 index f1c452a0d60..8ee77580a3f 100644
 --- a/distrib/utils/x_ping/Makefile
 +++ b/distrib/utils/x_ping/Makefile
 @@ -12,10 +12,6 @@ CPPFLAGS+=	-I${SRCDIR} -DCRUNCHOPS
  DPADD=		${LIBM}
  LDADD=		-lm

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.ping.c=-O0
 -.endif
 -
  .include <bsd.prog.mk>

  .PATH:		${SRCDIR}
 diff --git a/external/apache2/argon2/lib/libargon2/Makefile.inc b/external/apache2/argon2/lib/libargon2/Makefile.inc
 index d3f4470c6c7..6a1dd146d7d 100644
 --- a/external/apache2/argon2/lib/libargon2/Makefile.inc
 +++ b/external/apache2/argon2/lib/libargon2/Makefile.inc
 @@ -16,7 +16,3 @@ CFLAGS+=	-pthread
  LDADD+=-lpthread
  DPADD+=${LIBPTHREAD}
  .endif
 -
 -.if ${MACHINE} == "vax"
 -COPTS.blake2b.c+=	-O0
 -.endif
 diff --git a/external/bsd/jemalloc/lib/Makefile.inc b/external/bsd/jemalloc/lib/Makefile.inc
 index 2f524358f46..d5da774f293 100644
 --- a/external/bsd/jemalloc/lib/Makefile.inc
 +++ b/external/bsd/jemalloc/lib/Makefile.inc
 @@ -53,12 +53,6 @@ COPTS.ctl.c+=-Wno-error=stack-protector
  COPTS.stats.c+=-Wno-error=stack-protector
  COPTS.tcache.c+=-Wno-error=stack-protector

 -.if ${MACHINE_ARCH} == "vax"
 -# in merge_overlapping_regs, at regrename.c
 -COPTS.arena.c+=-O0
 -COPTS.extent.c+=-O0
 -.endif
 -
  SRCS+=${JEMALLOC_SRCS}

  jemalloc.d jemalloc.pico jemalloc.o jemalloc.ln jemalloc.po jemalloc.go: \
 diff --git a/external/bsd/mdocml/lib/libmandoc/Makefile b/external/bsd/mdocml/lib/libmandoc/Makefile
 index 40d7e29ae88..dfd3077a2c7 100644
 --- a/external/bsd/mdocml/lib/libmandoc/Makefile
 +++ b/external/bsd/mdocml/lib/libmandoc/Makefile
 @@ -39,11 +39,6 @@ tbl_opts.c

  MAN=	mandoc.3

 -# XXX
 -.if ${MACHINE} == "vax"
 -COPTS.mdoc_macro.c+=-O0
 -.endif
 -
  COPTS.man_validate.c+=-Wno-error=array-bounds

  .include <bsd.lib.mk>
 diff --git a/external/gpl3/binutils.old/lib/libbfd/Makefile b/external/gpl3/binutils.old/lib/libbfd/Makefile
 index 03477232b55..74a354532fa 100644
 --- a/external/gpl3/binutils.old/lib/libbfd/Makefile
 +++ b/external/gpl3/binutils.old/lib/libbfd/Makefile
 @@ -41,10 +41,6 @@ CPPFLAGS+=	-I${.CURDIR}/arch/${BFD_MACHINE_ARCH} -I${DIST}/include -I. \
  		-DDEBUGDIR=\"${DEBUGDIR}\" -DLIBDIR=\"${LIBDIR}\" \
  		-DBINDIR=\"${BINDIR}\"

 -.if (${BFD_MACHINE_ARCH} == "vax")
 -CPPFLAGS.elf.c +=	-O0
 -.endif
 -
  COPTS.pei-x86_64.c+=	-Wno-stack-protector
  COPTS.elfxx-mips.c+=	-Wno-stack-protector
  COPTS.elf.c+=		${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 10:? -Wno-overflow :}
 diff --git a/external/gpl3/binutils/lib/libbfd/Makefile b/external/gpl3/binutils/lib/libbfd/Makefile
 index 00cb2b20081..a3f0c25fd35 100644
 --- a/external/gpl3/binutils/lib/libbfd/Makefile
 +++ b/external/gpl3/binutils/lib/libbfd/Makefile
 @@ -41,10 +41,6 @@ CPPFLAGS+=	-I${.CURDIR}/arch/${BFD_MACHINE_ARCH} -I${DIST}/include -I. \
  		-DDEBUGDIR=\"${DEBUGDIR}\" -DLIBDIR=\"${LIBDIR}\" \
  		-DBINDIR=\"${BINDIR}\"

 -.if (${BFD_MACHINE_ARCH} == "vax")
 -CPPFLAGS.elf.c +=	-O0
 -.endif
 -
  COPTS.pei-x86_64.c+=	-Wno-stack-protector
  COPTS.elfxx-mips.c+=	-Wno-stack-protector
  COPTS.elf.c+=		${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 10:? -Wno-overflow :}
 diff --git a/external/gpl3/gcc.old/lib/Makefile.sanitizer b/external/gpl3/gcc.old/lib/Makefile.sanitizer
 index efd36ae4bee..5173a5109a0 100644
 --- a/external/gpl3/gcc.old/lib/Makefile.sanitizer
 +++ b/external/gpl3/gcc.old/lib/Makefile.sanitizer
 @@ -88,22 +88,3 @@ COPTS+=-fno-builtin -fno-exceptions -fno-rtti -funwind-tables

  # Can't profile without it`
  #-fomit-frame-pointer
 -
 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.sanitizer_allocator.cc += -O1
 -COPTS.sanitizer_common.cc += -O1
 -COPTS.sanitizer_common_libcdep.cc += -O1
 -COPTS.sanitizer_coverage_libcdep.cc += -O1
 -COPTS.sanitizer_coverage_mapping_libcdep.cc += -O1
 -COPTS.sanitizer_deadlock_detector1.cc += -O1
 -COPTS.sanitizer_mac.cc += -O1
 -COPTS.sanitizer_netbsd.cc += -O1
 -COPTS.sanitizer_posix.cc += -O1
 -COPTS.sanitizer_printf.cc += -O1
 -COPTS.sanitizer_procmaps_common.cc += -O1
 -COPTS.sanitizer_stackdepot.cc += -O1
 -COPTS.sanitizer_symbolizer_libcdep.cc += -O1
 -COPTS.sanitizer_symbolizer_report.cc += -O1
 -COPTS.ubsan_diag.cc += -O1
 -COPTS.ubsan_init.cc += -O1
 -.endif
 diff --git a/external/gpl3/gcc.old/lib/libasan/Makefile b/external/gpl3/gcc.old/lib/libasan/Makefile
 index 1e6f9608abe..3da7bbf2f58 100644
 --- a/external/gpl3/gcc.old/lib/libasan/Makefile
 +++ b/external/gpl3/gcc.old/lib/libasan/Makefile
 @@ -49,14 +49,6 @@ LIBDPLIBS+= m  ${NETBSDSRCDIR}/lib/libm
  LIBDPLIBS+= pthread ${NETBSDSRCDIR}/lib/libpthread
  CPPFLAGS+=-DCAN_SANITIZE_UB=0

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.asan_allocator.cc += -O1
 -COPTS.asan_report.cc += -O1
 -COPTS.sanitizer_file.cc += -O1
 -COPTS.ubsan_diag.cc += -O1
 -COPTS.ubsan_init.cc += -O1
 -.endif
 -
  .if ${MACHINE_ARCH} == "mipsel" || ${MACHINE_ARCH} == "mipseb"
  COPTS.asan_interceptors.cc += -O1
  .endif
 diff --git a/external/gpl3/gcc.old/lib/liblsan/Makefile b/external/gpl3/gcc.old/lib/liblsan/Makefile
 index 4578544a9a8..ddb7981077c 100644
 --- a/external/gpl3/gcc.old/lib/liblsan/Makefile
 +++ b/external/gpl3/gcc.old/lib/liblsan/Makefile
 @@ -16,11 +16,6 @@ LSAN_SRCS+= \
  	lsan_linux.cc \
  	lsan_thread.cc

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.lsan_allocator.cc += -O1
 -COPTS.sanitizer_file.cc += -O1
 -.endif
 -
  LIB=	lsan
  SRCS+=	${LSAN_SRCS}
  LIBDPLIBS+= m ${NETBSDSRCDIR}/lib/libm
 diff --git a/external/gpl3/gcc.old/lib/libubsan/Makefile b/external/gpl3/gcc.old/lib/libubsan/Makefile
 index 2e2faca7b1c..9de82550d14 100644
 --- a/external/gpl3/gcc.old/lib/libubsan/Makefile
 +++ b/external/gpl3/gcc.old/lib/libubsan/Makefile
 @@ -26,10 +26,6 @@ UBSAN_SRCS= \
  COPTS.${_s}.cc+=-frtti
  .endfor

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.sanitizer_file.cc += -O1
 -.endif
 -
  LIB=	ubsan
  SRCS+=	${UBSAN_SRCS}
  LIBDPLIBS+= m ${NETBSDSRCDIR}/lib/libm
 diff --git a/external/gpl3/gcc.old/usr.bin/cc1/Makefile b/external/gpl3/gcc.old/usr.bin/cc1/Makefile
 index c55e292ee8e..ff12a5be524 100644
 --- a/external/gpl3/gcc.old/usr.bin/cc1/Makefile
 +++ b/external/gpl3/gcc.old/usr.bin/cc1/Makefile
 @@ -46,17 +46,6 @@ CPPFLAGS.default-c.c+=	-I${BACKENDOBJ}
  BUILDSYMLINKS+= ${GNUHOSTDIST}/gcc/config/sh/sh-c.cc sh-c.c
  .endif

 -.if ${MACHINE_CPU} == "vax"
 -COPTS.c-decl.c+=-O0
 -COPTS.c-typeck.c+=-O0
 -COPTS.c-array-notation.c+=-O0
 -COPTS.c-common.c+=-O0
 -COPTS.c-ada-spec.c+=-O0
 -COPTS.cilk.c+=-O0
 -COPTS.c-ubsan.c+=-O0
 -COPTS.cc1-checksum.c+=-O0
 -.endif
 -
  .if ${MACHINE_ARCH} == "mipseb" || ${MACHINE_ARCH} == "mipsel"
  COPTS.c-common.c+=-O3
  .endif
 diff --git a/external/gpl3/gcc.old/usr.bin/cc1obj/Makefile b/external/gpl3/gcc.old/usr.bin/cc1obj/Makefile
 index 3123ee0d60b..aab82ad3448 100644
 --- a/external/gpl3/gcc.old/usr.bin/cc1obj/Makefile
 +++ b/external/gpl3/gcc.old/usr.bin/cc1obj/Makefile
 @@ -44,16 +44,8 @@ COPTS.objc-act.c+=			-Wno-stack-protector
  COPTS.objc-gnu-runtime-abi-01.c+=	-Wno-stack-protector
  COPTS.objc-next-runtime-abi-01.c+=	-Wno-stack-protector

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.c-decl.c+=-O0
 -COPTS.c-typeck.c+=-O0
 -COPTS.c-array-notation.c+=-O0
 -COPTS.c-common.c+=-O0
 -COPTS.c-ada-spec.c+=-O0
 -COPTS.cilk.c+=-O0
 -COPTS.c-ubsan.c+=-O0
 -COPTS.cc1obj-checksum.c+=-O0
 -.endif
 +COPTS.c-cppbuiltin.c+=	${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} == 8:? -Wno-error=format-overflow :}
 +COPTS.c-typeck.c+=	${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} == 8:? -Wno-error=format-overflow :}

  .if ${MACHINE_ARCH} == "mipseb" || ${MACHINE_ARCH} == "mipsel"
  COPTS.c-common.c+=-O3
 diff --git a/external/gpl3/gcc.old/usr.bin/cc1objplus/Makefile b/external/gpl3/gcc.old/usr.bin/cc1objplus/Makefile
 index b9c108251c5..e04e8fc7f53 100644
 --- a/external/gpl3/gcc.old/usr.bin/cc1objplus/Makefile
 +++ b/external/gpl3/gcc.old/usr.bin/cc1objplus/Makefile
 @@ -69,18 +69,6 @@ COPTS.objc-act.c+=			-Wno-stack-protector
  COPTS.objc-gnu-runtime-abi-01.c+=	-Wno-stack-protector
  COPTS.objc-next-runtime-abi-01.c+=	-Wno-stack-protector

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.c-decl.c+=-O0
 -COPTS.c-typeck.c+=-O0
 -COPTS.c-array-notation.c+=-O0
 -COPTS.c-common.c+=-O0
 -COPTS.c-ada-spec.c+=-O0
 -COPTS.cilk.c+=-O0
 -COPTS.c-ubsan.c+=-O0
 -COPTS.cc1obj-checksum.c+=-O0
 -COPTS.decl.c+=-O0
 -.endif
 -
  .if ${MACHINE_ARCH} == "mipseb" || ${MACHINE_ARCH} == "mipsel"
  COPTS.c-common.c+=-O3
  .endif
 diff --git a/external/gpl3/gcc.old/usr.bin/cc1plus/Makefile b/external/gpl3/gcc.old/usr.bin/cc1plus/Makefile
 index 7936efd3a5e..7c54559e21a 100644
 --- a/external/gpl3/gcc.old/usr.bin/cc1plus/Makefile
 +++ b/external/gpl3/gcc.old/usr.bin/cc1plus/Makefile
 @@ -31,23 +31,6 @@ CHECKSUM_OBJS= ${LIBBACKTRACEOBJ}/libbacktrace.a \

  CFLAGS+=	-Wno-error=stack-protector

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.call.c+=-O0
 -COPTS.decl.c+=-O0
 -COPTS.typeck2.c+=-O0
 -COPTS.class.c+=-O0
 -COPTS.typeck.c+=-O0
 -COPTS.init.c+=-O0
 -COPTS.semantics.c+=-O0
 -COPTS.mangle.c+=-O0
 -COPTS.constexpr.c+=-O0
 -COPTS.c-common.c+=-O0
 -COPTS.c-ada-spec.c+=-O0
 -COPTS.cilk.c+=-O0
 -COPTS.c-ubsan.c+=-O0
 -COPTS.cc1plus-checksum.c+=-O0
 -.endif
 -
  .if ${MACHINE_ARCH} == "mipseb" || ${MACHINE_ARCH} == "mipsel"
  COPTS.c-common.c+=-O3
  .endif
 diff --git a/external/gpl3/gcc.old/usr.bin/gcc/Makefile b/external/gpl3/gcc.old/usr.bin/gcc/Makefile
 index 7a66d77ffc7..a5a4b1c3adf 100644
 --- a/external/gpl3/gcc.old/usr.bin/gcc/Makefile
 +++ b/external/gpl3/gcc.old/usr.bin/gcc/Makefile
 @@ -25,9 +25,6 @@ ${SRCS}: ${GCCARCH}/defs.mk
  .include <bsd.info.mk>

  COPTS.gcc.c=	-Wno-stack-protector
 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.dse.c=	-O1
 -.endif

  .PATH: ${DIST}/gcc ${DIST}/gcc/doc ${DIST}/gcc/c

 diff --git a/external/gpl3/gcc.old/usr.bin/libdecnumber/Makefile b/external/gpl3/gcc.old/usr.bin/libdecnumber/Makefile
 index 751d1513eec..33aeb1c9898 100644
 --- a/external/gpl3/gcc.old/usr.bin/libdecnumber/Makefile
 +++ b/external/gpl3/gcc.old/usr.bin/libdecnumber/Makefile
 @@ -14,10 +14,6 @@ SRCS=		decNumber.c decContext.c decimal32.c decimal64.c decimal128.c
  CPPFLAGS+=	-I${.CURDIR}/arch/${GCC_MACHINE_ARCH} -I${DIST}/libdecnumber
  CPPFLAGS+=	-I${DIST}/libgcc

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.decNumber.c=-O0
 -.endif
 -
  .include <bsd.lib.mk>

  # Force using C++ for this
 diff --git a/external/gpl3/gcc.old/usr.bin/lto-dump/Makefile b/external/gpl3/gcc.old/usr.bin/lto-dump/Makefile
 index 90f44a9fcf6..fd251464fb7 100644
 --- a/external/gpl3/gcc.old/usr.bin/lto-dump/Makefile
 +++ b/external/gpl3/gcc.old/usr.bin/lto-dump/Makefile
 @@ -24,11 +24,6 @@ COPTS.lto-common.c+=	-Wno-stack-protector
  .include "../Makefile.backtrace"
  .include "../Makefile.libdecnumber"

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.lto-lang.c+=-O0
 -COPTS.lto-symtab.c+=-O0
 -.endif
 -
  LDADD+=	${LIBIBERTY} ${LIBMPC} ${LIBMPFR} ${LIBGMP} -lintl -lz -lm
  DPADD+=	${LIBIBERTY} ${LIBMPC} ${LIBMPFR} ${LIBGMP} ${LIBINTL} ${LIBZ} ${LIBM}

 diff --git a/external/gpl3/gcc.old/usr.bin/lto1/Makefile b/external/gpl3/gcc.old/usr.bin/lto1/Makefile
 index 4c49161a64c..340d3c6124f 100644
 --- a/external/gpl3/gcc.old/usr.bin/lto1/Makefile
 +++ b/external/gpl3/gcc.old/usr.bin/lto1/Makefile
 @@ -21,11 +21,6 @@ COPTS.lto-common.c+=	-Wno-stack-protector
  .include "../Makefile.libcpp"
  .include "../Makefile.libdecnumber"

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.lto-lang.c+=-O0
 -COPTS.lto-symtab.c+=-O0
 -.endif
 -
  LDADD+= ${LIBIBERTYOBJ}/libiberty.a
  DPADD+= ${LIBIBERTYOBJ}/libiberty.a
  LDADD+=	${LIBIBERTY} ${LIBMPC} ${LIBMPFR} ${LIBGMP} -lintl -lz -lm
 diff --git a/external/gpl3/gdb.old/lib/libdecnumber/Makefile b/external/gpl3/gdb.old/lib/libdecnumber/Makefile
 index bcd4ae5b222..ce28811526b 100644
 --- a/external/gpl3/gdb.old/lib/libdecnumber/Makefile
 +++ b/external/gpl3/gdb.old/lib/libdecnumber/Makefile
 @@ -18,10 +18,6 @@ CPPFLAGS+=	-I${.CURDIR}/arch/${GDB_MACHINE_ARCH} \

  SRCS=		${G_OBJS:.o=.c} ${G_SOURCES}

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.decNumber.c=-O0
 -.endif
 -
  .PATH: ${DIST}/libdecnumber ${DIST}/libdecnumber/dpd

  .include <bsd.lib.mk>
 diff --git a/external/gpl3/gdb/lib/libdecnumber/Makefile b/external/gpl3/gdb/lib/libdecnumber/Makefile
 index c95d36e3dfa..e3169865304 100644
 --- a/external/gpl3/gdb/lib/libdecnumber/Makefile
 +++ b/external/gpl3/gdb/lib/libdecnumber/Makefile
 @@ -18,10 +18,6 @@ CPPFLAGS+=	-I${.CURDIR}/arch/${GDB_MACHINE_ARCH} \

  SRCS=		${G_OBJS:.o=.c} ${G_SOURCES}

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.decNumber.c=-O0
 -.endif
 -
  .PATH: ${DIST}/libdecnumber ${DIST}/libdecnumber/dpd ${DIST}/libdecnumber/bid

  .include <bsd.lib.mk>
 diff --git a/external/gpl3/gdb/lib/libgdb/Makefile b/external/gpl3/gdb/lib/libgdb/Makefile
 index b87a515d13a..c118c363975 100644
 --- a/external/gpl3/gdb/lib/libgdb/Makefile
 +++ b/external/gpl3/gdb/lib/libgdb/Makefile
 @@ -66,12 +66,6 @@ CFLAGS:=		${CXXFLAGS} -std=gnu++17 -Wno-error=stack-protector

  ada-exp.c: ada-lex.c

 -.if ${MACHINE} == "vax"
 -. if ${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 8
 -COPTS.read.c+=	-O0
 -. endif
 -.endif
 -
  # These are generated by implicit rules and are not easy to generate
  CLEANDIRFILES+= \
  	ada-exp.c ada-lex.c \
 diff --git a/external/mit/xorg/lib/gallium.old/Makefile b/external/mit/xorg/lib/gallium.old/Makefile
 index 55b2fe3d1c1..bfa40c8974f 100644
 --- a/external/mit/xorg/lib/gallium.old/Makefile
 +++ b/external/mit/xorg/lib/gallium.old/Makefile
 @@ -1211,10 +1211,6 @@ SYMLINKS+= gallium_dri.so.${SHLIB_MAJOR}.debug ${DRIDEBUGDIR}/${_d}_dri.so.${SHL
  COPTS+=	${${ACTIVE_CC} == "clang":? -Wa,-Av8plus  :}
  .endif

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.nir.c += -O1
 -.endif
 -
  # XXXGCC12
  .if ${MACHINE_ARCH} == "m68k"
  COPTS.st_glsl_to_tgsi.cpp += -O1
 diff --git a/external/mit/xorg/lib/gallium/Makefile b/external/mit/xorg/lib/gallium/Makefile
 index 6778a8c11c8..9f1422080fe 100644
 --- a/external/mit/xorg/lib/gallium/Makefile
 +++ b/external/mit/xorg/lib/gallium/Makefile
 @@ -1428,10 +1428,6 @@ SYMLINKS+= gallium_dri.so.${SHLIB_MAJOR}.debug ${DRIDEBUGDIR}/${_d}_dri.so.${SHL
  COPTS+=	${${ACTIVE_CC} == "clang":? -Wa,-Av8plus  :}
  .endif

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.nir.c += -O1
 -.endif
 -
  COPTS.u_atomic.c+=	${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 10:? -Wno-builtin-declaration-mismatch :}

  .include <bsd.lib.mk>
 diff --git a/external/mit/xorg/lib/libX11/Makefile.libx11 b/external/mit/xorg/lib/libX11/Makefile.libx11
 index e103d9ace12..0e55c2a4732 100644
 --- a/external/mit/xorg/lib/libX11/Makefile.libx11
 +++ b/external/mit/xorg/lib/libX11/Makefile.libx11
 @@ -471,11 +471,6 @@ COPTS.OpenDis.c+=	-Wno-error	# XXX xf86bigfstr.h
  COPTS.XlibInt.c+=	-Wno-error	# XXX xcmiscstr.h
  COPTS.XKBBind.c+=	-Wno-deprecated-declarations	# uses XKeycodeToKeysym

 -# XXX
 -.if ${MACHINE} == "vax"
 -COPTS.lcWrap.c+=	-O0
 -.endif
 -
  CWARNFLAGS.clang+=	-Wno-string-plus-int

  .include "${NETBSDSRCDIR}/external/mit/xorg/tools/makekeys/Makefile.makekeys"
 diff --git a/games/gomoku/Makefile b/games/gomoku/Makefile
 index e86a63aaea7..678537066ed 100644
 --- a/games/gomoku/Makefile
 +++ b/games/gomoku/Makefile
 @@ -9,10 +9,6 @@ LDADD=	-lcurses -lterminfo
  HIDEGAME=hidegame
  CPPFLAGS+=	${DEBUG:D-DDEBUG}

 -.if ${MACHINE} == "vax"
 -COPTS.pickmove.c += -O0
 -.endif
 -
  #WARNS=		6	# would produce warnings about small integer types
  LINTFLAGS+=	-w	# treat warnings as errors
  LINTFLAGS+=	-T	# strict bool mode
 diff --git a/games/phantasia/Makefile b/games/phantasia/Makefile
 index e9c53f23ae5..b919dac17c6 100644
 --- a/games/phantasia/Makefile
 +++ b/games/phantasia/Makefile
 @@ -52,7 +52,3 @@ map: map.c
  	./map | plot > /dev/tty

  .include <bsd.prog.mk>
 -
 -.if defined(HAVE_GCC) && ${MACHINE_ARCH} == "vax"
 -COPTS.misc.c+=	-O0
 -.endif
 diff --git a/lib/i18n_module/UTF7/Makefile b/lib/i18n_module/UTF7/Makefile
 index 712c1515d42..7136f7f0cc3 100644
 --- a/lib/i18n_module/UTF7/Makefile
 +++ b/lib/i18n_module/UTF7/Makefile
 @@ -3,6 +3,3 @@
  SRCPRE=citrus_
  .include <bsd.lib.mk>

 -.if ${MACHINE_ARCH} == "vax" && defined(HAVE_GCC)
 -COPTS.citrus_utf7.c+=	-O0
 -.endif
 diff --git a/lib/libbz2/Makefile b/lib/libbz2/Makefile
 index b2aea1e04b0..e60a2862d48 100644
 --- a/lib/libbz2/Makefile
 +++ b/lib/libbz2/Makefile
 @@ -15,11 +15,6 @@ SRCS=		blocksort.c huffman.c crctable.c randtable.c compress.c \
  INCS=		bzlib.h
  INCSDIR=	/usr/include

 -# XXX huffman.c gets mis-compiled with 2.95.3
 -.if ${MACHINE_ARCH} == "vax"
 -COPTS+=		-O0
 -.endif
 -
  COPTS+=		${CC_WNO_IMPLICIT_FALLTHROUGH}

  # XXX blocksort.c gets mis-compiled with 4.1
 diff --git a/lib/libc/gdtoa/Makefile.inc b/lib/libc/gdtoa/Makefile.inc
 index 132686fc33d..609da919803 100644
 --- a/lib/libc/gdtoa/Makefile.inc
 +++ b/lib/libc/gdtoa/Makefile.inc
 @@ -44,10 +44,3 @@ SRCS+=	dmisc.c \
  .if ${MACHINE_ARCH} != "vax"
  SRCS+=	strtord.c
  .endif
 -
 -# XXX revisit with newer GCC.
 -# Ensure numbers like 0xffff319f5fa95963 print correctly
 -# ("999999999999999.98", not garbage like "?A>C>@>C:BA;A><.:<")
 -.if ${MACHINE_ARCH} == "vax" && defined(HAVE_GCC)
 -COPTS.misc.c+=	-O0
 -.endif
 diff --git a/lib/libcrypt/Makefile b/lib/libcrypt/Makefile
 index cb3f89d6d09..e9c8be820da 100644
 --- a/lib/libcrypt/Makefile
 +++ b/lib/libcrypt/Makefile
 @@ -30,9 +30,6 @@ SRCS+=		crypt-argon2.c
  SRCS+=		${src}
  COPTS.${src}+=	-fvisibility=hidden
  .  endfor
 -.  if ${MACHINE} == "vax"
 -COPTS.blake2b.c+=	-O0
 -.  endif
  .endif

  WARNS?=	5
 diff --git a/libexec/ld.elf_so/Makefile b/libexec/ld.elf_so/Makefile
 index f5baae1e883..24f7e1121e5 100644
 --- a/libexec/ld.elf_so/Makefile
 +++ b/libexec/ld.elf_so/Makefile
 @@ -141,10 +141,6 @@ CPPFLAGS+=	-DRTLD_DEFAULT_LIBRARY_PATH=\"${SHLIBDIR}:${LIBDIR}\"
  COPTS.rtld.c+=	-Wno-stack-protector
  COPTS.symbol.c+=-Wno-stack-protector

 -.if ${MACHINE_CPU} == "vax"
 -COPTS.rtld.c+=	-O0
 -.endif
 -
  LDADD+=		-Wl,--version-script=${.CURDIR}/symbols.map
  LDADD+=		-L${CLIBOBJ} -L${DESTDIR}${LIBDIR}
  .if ${MKPICLIB} != "no"
 diff --git a/sbin/fsck_ffs/Makefile.common b/sbin/fsck_ffs/Makefile.common
 index 765638b2801..824e3bf2628 100644
 --- a/sbin/fsck_ffs/Makefile.common
 +++ b/sbin/fsck_ffs/Makefile.common
 @@ -36,7 +36,3 @@ COPTS.ffs_appleufs.c+=	-Wno-pointer-sign
  .if ${MACHINE_ARCH} == "m68000"
  COPTS.pass1.c+=	-fno-tree-fre -fno-tree-lrs
  .endif
 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.pass1.c+=	-O0
 -COPTS.inode.c+=	-O0
 -.endif
 diff --git a/sbin/fsdb/Makefile b/sbin/fsdb/Makefile
 index c039f73a1eb..3b0331e5880 100644
 --- a/sbin/fsdb/Makefile
 +++ b/sbin/fsdb/Makefile
 @@ -39,12 +39,6 @@ COPTS.${f}.c+=	-Wno-pointer-sign
  COPTS.pass1.c+=	-fno-tree-fre -fno-tree-lrs
  .endif

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.pass1.c+=	-O0
 -COPTS.inode.c+=	-O0
 -COPTS.fsdb.c+=	-O0
 -.endif
 -
  CWARNFLAGS.gcc+=	${CC_WNO_ADDRESS_OF_PACKED_MEMBER}

  .include <bsd.prog.mk>
 diff --git a/sbin/newfs_ext2fs/Makefile b/sbin/newfs_ext2fs/Makefile
 index 40a44b9a038..ecfdbff4d3a 100644
 --- a/sbin/newfs_ext2fs/Makefile
 +++ b/sbin/newfs_ext2fs/Makefile
 @@ -20,8 +20,4 @@ DPADD+=${LIBPROP}

  .PATH:	${NETBSDSRCDIR}/sys/ufs/ext2fs ${FSCK}

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.mke2fs.c=-O0
 -.endif
 -
  .include <bsd.prog.mk>
 diff --git a/sbin/ping/Makefile b/sbin/ping/Makefile
 index 4f33501ea7a..1f7f56e3ea5 100644
 --- a/sbin/ping/Makefile
 +++ b/sbin/ping/Makefile
 @@ -12,8 +12,4 @@ CPPFLAGS+=	-DIPSEC
  LDADD+= -lipsec
  DPADD+= ${LIBIPSEC}

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.ping.c=-O0
 -.endif
 -
  .include <bsd.prog.mk>
 diff --git a/sys/arch/vax/conf/Makefile.vax b/sys/arch/vax/conf/Makefile.vax
 index cf095d54a86..c483eaa644a 100644
 --- a/sys/arch/vax/conf/Makefile.vax
 +++ b/sys/arch/vax/conf/Makefile.vax
 @@ -34,7 +34,6 @@ GENASSYM_CONF=	${VAX}/vax/genassym.cf
  CPPFLAGS+=	-D_VAX_INLINE_
  AFLAGS+=	-x assembler-with-cpp -fno-pic
  CFLAGS+=	-fno-pic
 -COPTS.wsmux.c+=	${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 9:? -O1 :}

  ##
 diff --git a/sys/lib/libsa/Makefile b/sys/lib/libsa/Makefile
 index 718c97ce857..4ef3840c753 100644
 --- a/sys/lib/libsa/Makefile
 +++ b/sys/lib/libsa/Makefile
 @@ -96,7 +96,3 @@ SRCS+=	ufs.c
  lib${LIB}.o:: ${OBJS:O} __buildstdlib

  CPPFLAGS+=	-Wno-pointer-sign
 -
 -.if defined(HAVE_GCC) && ${MACHINE_ARCH} == "vax"
 -COPTS.bootp.c+=	-O0
 -.endif
 diff --git a/sys/lib/libz/Makefile b/sys/lib/libz/Makefile
 index 6945c0da6c6..61fb7d4f652 100644
 --- a/sys/lib/libz/Makefile
 +++ b/sys/lib/libz/Makefile
 @@ -25,7 +25,3 @@ CLEANFILES+= lib${LIB}.o
  .include <bsd.lib.mk>

  lib${LIB}.o:: ${OBJS:O} __buildstdlib
 -
 -.if defined(HAVE_GCC) && ${MACHINE_ARCH} == "vax"
 -COPTS.inftrees.c+=	-O0
 -.endif
 diff --git a/sys/modules/lfs/Makefile b/sys/modules/lfs/Makefile
 index 962538821a5..ea8f187e160 100644
 --- a/sys/modules/lfs/Makefile
 +++ b/sys/modules/lfs/Makefile
 @@ -18,9 +18,4 @@ SRCS+=	ulfs_bmap.c ulfs_dirhash.c ulfs_inode.c ulfs_lookup.c \

  WARNS=	3

 -.if ${MACHINE} == "vax"
 -# GCC 6.5 and 7.4 cannot compile this with -DDIAGNOSTIC and -O2/-O1
 -COPTS.lfs_inode.c+=	-O0
 -.endif
 -
  .include <bsd.kmodule.mk>
 diff --git a/sys/rump/fs/lib/liblfs/Makefile b/sys/rump/fs/lib/liblfs/Makefile
 index abade3767d9..68b74c62502 100644
 --- a/sys/rump/fs/lib/liblfs/Makefile
 +++ b/sys/rump/fs/lib/liblfs/Makefile
 @@ -17,9 +17,6 @@ SRCS+=	ulfs_bmap.c ulfs_dirhash.c ulfs_extattr.c 			\

  CFLAGS+=        -DLFS_KERNEL_RFW
 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.lfs_inode.c+=-O0
 -.endif

  .include <bsd.lib.mk>
  .include <bsd.klinks.mk>
 diff --git a/usr.sbin/mtrace/Makefile b/usr.sbin/mtrace/Makefile
 index aef09db6198..9c125c15265 100644
 --- a/usr.sbin/mtrace/Makefile
 +++ b/usr.sbin/mtrace/Makefile
 @@ -12,10 +12,6 @@ PROG=	mtrace
  SRCS=	igmp.c inet.c kern.c mtrace.c
  MAN=	mtrace.8

 -.if ${MACHINE_ARCH} == "vax"
 -COPTS.mtrace.c=-O0
 -.endif
 -
  BINMODE=4555
  BINOWN= root

 diff --git a/external/gpl3/gcc.old/usr.bin/backend/Makefile b/external/gpl3/gcc.old/usr.bin/backend/Makefile
 index d69a26fe619..99e881c783d 100644
 --- a/external/gpl3/gcc.old/usr.bin/backend/Makefile
 +++ b/external/gpl3/gcc.old/usr.bin/backend/Makefile
 @@ -533,68 +533,9 @@ COPTS.insn-recog.c+=-Wno-error

  .if ${GCC_MACHINE_ARCH} == "vax"
  CPPFLAGS+=-I${.CURDIR}/../../lib/libgcc/libgcov/arch/${GCC_MACHINE_ARCH}
 -COPTS.builtins.c+=-O0
 -COPTS.calls.c+=-O0
 -COPTS.convert.c+=-O0
 -COPTS.data-streamer-out.c+=-O0
 -COPTS.dse.c+=-O0					# XXX port-vax/51967
 -COPTS.dwarf2out.c+=-O0
 -COPTS.expmed.c+=-O0
 -COPTS.expr.c+=-O0 -Wno-error=tautological-compare
 -COPTS.fixed-value.c+=-O0
 -COPTS.fold-const.c+=-O0
 -COPTS.generic-match.c+=-O0
 -COPTS.gimple-fold.c+=-O0
 -COPTS.gimple-match.c+=-O0
 -COPTS.gimple-ssa-strength-reduction.c+=-O0
 -COPTS.gimple-ssa-warn-restrict.c+=-O0
 -COPTS.gimple.c+=-O0
 -COPTS.internal-fn.c+=-O0
 -COPTS.lto-streamer-out.c+=-O0
 -COPTS.omp-low.c+=-O0
 -COPTS.predict.c+=-O0
 -COPTS.range-op.cc+=-O0
 -COPTS.recog.c+=-O0
 -COPTS.sanopt.c+=-O0
 -COPTS.stmt.c+=-O0
 -COPTS.stor-layout.c+=-O0
 -COPTS.targhooks.c+=-O0
 -COPTS.tree-affine.c+=-O0
 -COPTS.tree-cfg.c+=-O0
 -COPTS.tree-data-ref.c+=-O0
 -COPTS.tree-eh.c+=-O0
 -COPTS.tree-if-conv.c+=-O0
 -COPTS.tree-object-size.c+=-O0
 -COPTS.tree-parloops.c+=-O0
 -COPTS.tree-predcom.c+=-O0
 -COPTS.tree-pretty-print.c+=-O0
 -COPTS.tree-ssa-alias.c+=-O0
 -COPTS.tree-ssa-ccp.c+=-O0
 -COPTS.tree-ssa-forwprop.c+=-O0
 -COPTS.tree-ssa-loop-ivopts.c+=-O0
 -COPTS.tree-ssa-loop-manip.c+=-O0
 -COPTS.tree-ssa-loop-niter.c+=-O0
 -COPTS.tree-ssa-math-opts.c+=-O0
 -COPTS.tree-ssa-phiopt.c+= -O0
 -COPTS.tree-ssa-pre.c+=-O0
 -COPTS.tree-ssa-reassoc.c+=-O0
 -COPTS.tree-ssa-strlen.c+=-O0
 -COPTS.tree-ssa-uninit.c+=-O0
 -COPTS.tree-ssa.c+=-O0
 -COPTS.tree-switch-conversion.c+=-O0
 -COPTS.tree-vect-data-refs.c+=-O0
 -COPTS.tree-vect-loop-manip.c+=-O0
 -COPTS.tree-vect-loop.c+=-O0
 -COPTS.tree-vect-patterns.c+=-O0
 -COPTS.tree-vect-stmts.c+=-O0
 -COPTS.tree-vrp.c+=-O0
 -COPTS.tree.c+=-O0
 -COPTS.ubsan.c+=-O0
 -COPTS.varasm.c+=-O0
 -COPTS.vr-values.c+=-O0
 -COPTS.web.c+=-O0
 -COPTS.wide-int-range.cc+=-O0
 -COPTS.wide-int.cc+=-O0
 +
 +COPTS.expmed.c+=-Wno-error=tautological-compare
 +COPTS.expr.c+=-Wno-error=tautological-compare
  .else
  COPTS.tree.c=	${${ACTIVE_CC} == "clang" :? -O0 :}
  .endif


 To generate a diff of this commit:
 cvs rdiff -u -r1.37 -r1.38 src/crypto/external/bsd/openssh/lib/Makefile
 cvs rdiff -u -r1.8 -r1.9 src/distrib/utils/x_ping/Makefile
 cvs rdiff -u -r1.1 -r1.2 \
     src/external/apache2/argon2/lib/libargon2/Makefile.inc
 cvs rdiff -u -r1.15 -r1.16 src/external/bsd/jemalloc/lib/Makefile.inc
 cvs rdiff -u -r1.12 -r1.13 src/external/bsd/mdocml/lib/libmandoc/Makefile
 cvs rdiff -u -r1.9 -r1.10 src/external/gpl3/binutils.old/lib/libbfd/Makefile
 cvs rdiff -u -r1.26 -r1.27 src/external/gpl3/binutils/lib/libbfd/Makefile
 cvs rdiff -u -r1.6 -r1.7 src/external/gpl3/gcc.old/lib/Makefile.sanitizer
 cvs rdiff -u -r1.10 -r1.11 src/external/gpl3/gcc.old/lib/libasan/Makefile
 cvs rdiff -u -r1.6 -r1.7 src/external/gpl3/gcc.old/lib/liblsan/Makefile
 cvs rdiff -u -r1.7 -r1.8 src/external/gpl3/gcc.old/lib/libubsan/Makefile
 cvs rdiff -u -r1.20 -r1.21 src/external/gpl3/gcc.old/usr.bin/backend/Makefile
 cvs rdiff -u -r1.11 -r1.12 src/external/gpl3/gcc.old/usr.bin/cc1/Makefile
 cvs rdiff -u -r1.11 -r1.12 src/external/gpl3/gcc.old/usr.bin/cc1obj/Makefile
 cvs rdiff -u -r1.2 -r1.3 \
     src/external/gpl3/gcc.old/usr.bin/cc1objplus/Makefile
 cvs rdiff -u -r1.12 -r1.13 src/external/gpl3/gcc.old/usr.bin/cc1plus/Makefile
 cvs rdiff -u -r1.10 -r1.11 src/external/gpl3/gcc.old/usr.bin/gcc/Makefile
 cvs rdiff -u -r1.13 -r1.14 \
     src/external/gpl3/gcc.old/usr.bin/libdecnumber/Makefile
 cvs rdiff -u -r1.2 -r1.3 src/external/gpl3/gcc.old/usr.bin/lto-dump/Makefile
 cvs rdiff -u -r1.8 -r1.9 src/external/gpl3/gcc.old/usr.bin/lto1/Makefile
 cvs rdiff -u -r1.9 -r1.10 src/external/gpl3/gdb.old/lib/libdecnumber/Makefile
 cvs rdiff -u -r1.4 -r1.5 src/external/gpl3/gdb/lib/libdecnumber/Makefile
 cvs rdiff -u -r1.35 -r1.36 src/external/gpl3/gdb/lib/libgdb/Makefile
 cvs rdiff -u -r1.50 -r1.51 src/external/mit/xorg/lib/gallium/Makefile
 cvs rdiff -u -r1.7 -r1.8 src/external/mit/xorg/lib/gallium.old/Makefile
 cvs rdiff -u -r1.25 -r1.26 src/external/mit/xorg/lib/libX11/Makefile.libx11
 cvs rdiff -u -r1.12 -r1.13 src/games/gomoku/Makefile
 cvs rdiff -u -r1.37 -r1.38 src/games/phantasia/Makefile
 cvs rdiff -u -r1.4 -r1.5 src/lib/i18n_module/UTF7/Makefile
 cvs rdiff -u -r1.21 -r1.22 src/lib/libbz2/Makefile
 cvs rdiff -u -r1.12 -r1.13 src/lib/libc/gdtoa/Makefile.inc
 cvs rdiff -u -r1.35 -r1.36 src/lib/libcrypt/Makefile
 cvs rdiff -u -r1.147 -r1.148 src/libexec/ld.elf_so/Makefile
 cvs rdiff -u -r1.2 -r1.3 src/sbin/fsck_ffs/Makefile.common
 cvs rdiff -u -r1.42 -r1.43 src/sbin/fsdb/Makefile
 cvs rdiff -u -r1.6 -r1.7 src/sbin/newfs_ext2fs/Makefile
 cvs rdiff -u -r1.17 -r1.18 src/sbin/ping/Makefile
 cvs rdiff -u -r1.85 -r1.86 src/sys/arch/vax/conf/Makefile.vax
 cvs rdiff -u -r1.96 -r1.97 src/sys/lib/libsa/Makefile
 cvs rdiff -u -r1.23 -r1.24 src/sys/lib/libz/Makefile
 cvs rdiff -u -r1.10 -r1.11 src/sys/modules/lfs/Makefile
 cvs rdiff -u -r1.17 -r1.18 src/sys/rump/fs/lib/liblfs/Makefile
 cvs rdiff -u -r1.13 -r1.14 src/usr.sbin/mtrace/Makefile

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/doc
Date: Sat, 7 Oct 2023 12:32:28 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:32:28 UTC 2023

 Modified Files:
 	src/doc: CHANGES

 Log Message:
 doc/CHANGES: Document initial import of PR port-vax/57646


 To generate a diff of this commit:
 cvs rdiff -u -r1.3004 -r1.3005 src/doc/CHANGES

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/doc
Date: Sat, 7 Oct 2023 12:42:03 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 12:42:03 UTC 2023

 Modified Files:
 	src/doc: CHANGES

 Log Message:
 doc/CHANGES: Oops, relocate entry for PR port-vax/57646


 To generate a diff of this commit:
 cvs rdiff -u -r1.3005 -r1.3006 src/doc/CHANGES

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/usr.bin/cc1obj
Date: Sat, 7 Oct 2023 13:13:49 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Oct  7 13:13:49 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/usr.bin/cc1obj: Makefile

 Log Message:
 gcc.old: cc1obj/Makefile: Fix merge botch for PR port-vax/57646


 To generate a diff of this commit:
 cvs rdiff -u -r1.12 -r1.13 src/external/gpl3/gcc.old/usr.bin/cc1obj/Makefile

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: Rin Okuyama <rokuyama.rk@gmail.com>
To: "gnats-bugs@NetBSD.org" <gnats-bugs@NetBSD.org>, netbsd-bugs@netbsd.org
Cc: 
Subject: Re: port-vax/57646 (Import major vax toolchain fix by Kalvis
 Duckmanton)
Date: Sat, 7 Oct 2023 23:34:11 +0900

 [pullup-10 #394] port-vax/57646: Import major vax toolchain fix by Kalvis Duckmanton
 https://releng.netbsd.org/cgi-bin/req-10.cgi?show=394

 Intentionally keep this PR open.

 Thanks,
 rin

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc
Date: Sun, 8 Oct 2023 04:59:33 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sun Oct  8 04:59:33 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc: dse.c

 Log Message:
 gcc.old: Fix my regression for PR port-vax/57646 patch [5/21]

 Add a part of the original diff provided by Kalvis Duckmanton,
 which I carelessly dropped during NB_FIX_VAX_BACKEND addition.

 Fix ICE in DSE phase for native GCC. Now, pkgsrc/lang/perl5
 successfully builds again.


 To generate a diff of this commit:
 cvs rdiff -u -r1.14 -r1.15 src/external/gpl3/gcc.old/dist/gcc/dse.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc
Date: Sun, 8 Oct 2023 05:03:12 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sun Oct  8 05:03:12 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc: dse.c

 Log Message:
 gcc.old: Clarify PR port-vax/57646 patch [5/21]. NFC

 Restore ``else'' in the original patch. NFC but better to fit into
 upstream code here.


 To generate a diff of this commit:
 cvs rdiff -u -r1.15 -r1.16 src/external/gpl3/gcc.old/dist/gcc/dse.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: [netbsd-10] src
Date: Sun, 8 Oct 2023 14:35:25 +0000

 Module Name:	src
 Committed By:	martin
 Date:		Sun Oct  8 14:35:24 UTC 2023

 Modified Files:
 	src/crypto/external/bsd/openssh/lib [netbsd-10]: Makefile
 	src/distrib/utils/x_ping [netbsd-10]: Makefile
 	src/doc [netbsd-10]: CHANGES
 	src/external/apache2/argon2/lib/libargon2 [netbsd-10]: Makefile.inc
 	src/external/bsd/jemalloc/lib [netbsd-10]: Makefile.inc
 	src/external/bsd/mdocml/lib/libmandoc [netbsd-10]: Makefile
 	src/external/gpl3/binutils.old/lib/libbfd [netbsd-10]: Makefile
 	src/external/gpl3/binutils/dist/gas/config [netbsd-10]: tc-vax.c
 	    tc-vax.h
 	src/external/gpl3/binutils/lib/libbfd [netbsd-10]: Makefile
 	src/external/gpl3/gcc/dist/gcc [netbsd-10]: dse.c function.c recog.c
 	    reload.c rtlanal.c target.def targhooks.c targhooks.h
 	src/external/gpl3/gcc/dist/gcc/config/vax [netbsd-10]: builtins.md
 	    elf.h vax.c vax.md
 	src/external/gpl3/gcc/dist/gcc/doc [netbsd-10]: tm.texi tm.texi.in
 	src/external/gpl3/gcc/lib [netbsd-10]: Makefile.sanitizer
 	src/external/gpl3/gcc/lib/libasan [netbsd-10]: Makefile
 	src/external/gpl3/gcc/lib/liblsan [netbsd-10]: Makefile
 	src/external/gpl3/gcc/lib/libubsan [netbsd-10]: Makefile
 	src/external/gpl3/gcc/usr.bin/backend [netbsd-10]: Makefile
 	src/external/gpl3/gcc/usr.bin/cc1 [netbsd-10]: Makefile
 	src/external/gpl3/gcc/usr.bin/cc1obj [netbsd-10]: Makefile
 	src/external/gpl3/gcc/usr.bin/cc1objplus [netbsd-10]: Makefile
 	src/external/gpl3/gcc/usr.bin/cc1plus [netbsd-10]: Makefile
 	src/external/gpl3/gcc/usr.bin/gcc [netbsd-10]: Makefile
 	src/external/gpl3/gcc/usr.bin/libdecnumber [netbsd-10]: Makefile
 	src/external/gpl3/gcc/usr.bin/lto-dump [netbsd-10]: Makefile
 	src/external/gpl3/gcc/usr.bin/lto1 [netbsd-10]: Makefile
 	src/external/gpl3/gdb.old/lib/libdecnumber [netbsd-10]: Makefile
 	src/external/gpl3/gdb/lib/libdecnumber [netbsd-10]: Makefile
 	src/external/gpl3/gdb/lib/libgdb [netbsd-10]: Makefile
 	src/external/mit/xorg/lib/gallium [netbsd-10]: Makefile
 	src/external/mit/xorg/lib/gallium.old [netbsd-10]: Makefile
 	src/external/mit/xorg/lib/libX11 [netbsd-10]: Makefile.libx11
 	src/games/gomoku [netbsd-10]: Makefile
 	src/games/phantasia [netbsd-10]: Makefile
 	src/lib/i18n_module/UTF7 [netbsd-10]: Makefile
 	src/lib/libbz2 [netbsd-10]: Makefile
 	src/lib/libc/gdtoa [netbsd-10]: Makefile.inc
 	src/lib/libcrypt [netbsd-10]: Makefile
 	src/libexec/ld.elf_so [netbsd-10]: Makefile
 	src/sbin/fsck_ffs [netbsd-10]: Makefile.common
 	src/sbin/fsdb [netbsd-10]: Makefile
 	src/sbin/newfs_ext2fs [netbsd-10]: Makefile
 	src/sbin/ping [netbsd-10]: Makefile
 	src/sys/arch/vax/conf [netbsd-10]: Makefile.vax
 	src/sys/lib/libsa [netbsd-10]: Makefile
 	src/sys/lib/libz [netbsd-10]: Makefile
 	src/sys/modules/lfs [netbsd-10]: Makefile
 	src/sys/rump/fs/lib/liblfs [netbsd-10]: Makefile
 	src/tools/gcc [netbsd-10]: Makefile
 	src/usr.sbin/mtrace [netbsd-10]: Makefile

 Log Message:
 Pull up following revision(s) (requested by rin in ticket #394):

 	external/gpl3/binutils/dist/gas/config/tc-vax.h: revision 1.10
 	tools/gcc/Makefile: revision 1.109
 	external/gpl3/binutils/dist/gas/config/tc-vax.c: revision 1.16
 	external/gpl3/binutils/dist/gas/config/tc-vax.c: revision 1.17
 	external/gpl3/binutils/dist/gas/config/tc-vax.c: revision 1.18
 	external/gpl3/gcc.old/dist/gcc/recog.c: revision 1.12
 	external/gpl3/gcc.old/dist/gcc/function.c: revision 1.16
 	external/gpl3/gcc.old/dist/gcc/dse.c: revision 1.14 - 1.16
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.13
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.14
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.15
 	external/gpl3/gcc.old/dist/gcc/doc/tm.texi.in: revision 1.10
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.16
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.17
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.18
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.19
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.12
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.13
 	external/gpl3/gcc.old/usr.bin/backend/Makefile: revision 1.20
 	external/gpl3/gcc.old/dist/gcc/targhooks.c: revision 1.12
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.14
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.15
 	external/gpl3/gcc.old/dist/gcc/config/vax/builtins.md: revision 1.12
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.16
 	external/gpl3/gcc.old/dist/gcc/config/vax/builtins.md: revision 1.13
 	external/gpl3/gcc.old/dist/gcc/doc/tm.texi: revision 1.12
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.17
 	external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.18
 	external/gpl3/gcc.old/dist/gcc/config/vax/elf.h: revision 1.12
 	external/gpl3/gcc.old/dist/gcc/config/vax/elf.h: revision 1.13
 	external/gpl3/gcc.old/dist/gcc/targhooks.h: revision 1.12
 	external/gpl3/gcc.old/dist/gcc/target.def: revision 1.10
 	external/gpl3/gcc.old/dist/gcc/rtlanal.c: revision 1.14
 	external/gpl3/gcc.old/dist/gcc/reload.c: revision 1.12
 	external/gpl3/gcc.old/usr.bin/gcc/Makefile: revision 1.11
 	external/gpl3/gcc.old/usr.bin/lto-dump/Makefile: revision 1.3
 	external/gpl3/gcc.old/lib/Makefile.sanitizer: revision 1.7
 	external/gpl3/binutils.old/lib/libbfd/Makefile: revision 1.10
 	distrib/utils/x_ping/Makefile: revision 1.9
 	games/phantasia/Makefile: revision 1.38
 	external/apache2/argon2/lib/libargon2/Makefile.inc: revision 1.2
 	external/gpl3/gcc.old/lib/libubsan/Makefile: revision 1.8
 	external/bsd/mdocml/lib/libmandoc/Makefile: revision 1.13
 	sbin/ping/Makefile: revision 1.18
 	sbin/newfs_ext2fs/Makefile: revision 1.7
 	sys/lib/libz/Makefile: revision 1.24
 	sys/lib/libsa/Makefile: revision 1.97
 	external/gpl3/gcc.old/usr.bin/cc1objplus/Makefile: revision 1.3
 	external/gpl3/gdb/lib/libgdb/Makefile: revision 1.36
 	sys/modules/lfs/Makefile: revision 1.11
 	external/mit/xorg/lib/gallium/Makefile: revision 1.51
 	external/gpl3/gdb.old/lib/libdecnumber/Makefile: revision 1.10
 	external/mit/xorg/lib/libX11/Makefile.libx11: revision 1.26
 	libexec/ld.elf_so/Makefile: revision 1.148
 	external/bsd/jemalloc/lib/Makefile.inc: revision 1.16
 	external/gpl3/gcc.old/usr.bin/libdecnumber/Makefile: revision 1.14
 	crypto/external/bsd/openssh/lib/Makefile: revision 1.38
 	external/gpl3/gcc.old/usr.bin/backend/Makefile: revision 1.21
 	external/gpl3/gcc.old/usr.bin/cc1/Makefile: revision 1.12
 	external/gpl3/gcc.old/lib/libasan/Makefile: revision 1.11
 	external/gpl3/gcc.old/usr.bin/cc1plus/Makefile: revision 1.13
 	lib/libcrypt/Makefile: revision 1.36
 	external/gpl3/gdb/lib/libdecnumber/Makefile: revision 1.5
 	lib/libc/gdtoa/Makefile.inc: revision 1.13
 	games/gomoku/Makefile: revision 1.13
 	sbin/fsdb/Makefile: revision 1.43
 	external/gpl3/gcc.old/usr.bin/lto1/Makefile: revision 1.9
 	external/mit/xorg/lib/gallium.old/Makefile: revision 1.8
 	lib/libbz2/Makefile: revision 1.22
 	external/gpl3/gcc.old/usr.bin/cc1obj/Makefile: revision 1.12
 	usr.sbin/mtrace/Makefile: revision 1.14
 	external/gpl3/gcc.old/usr.bin/cc1obj/Makefile: revision 1.13
 	sys/arch/vax/conf/Makefile.vax: revision 1.86
 	sys/rump/fs/lib/liblfs/Makefile: revision 1.18
 	sbin/fsck_ffs/Makefile.common: revision 1.3
 	external/gpl3/binutils/lib/libbfd/Makefile: revision 1.27
 	lib/i18n_module/UTF7/Makefile: revision 1.5
 	external/gpl3/gcc.old/lib/liblsan/Makefile: revision 1.7
 	doc/CHANGES (apply patch)
 	(all external/gpl3/gcc.old/ changes applied to external/gpl3/gcc/)

 PR 57646: Import major vax toolchain fix.


 To generate a diff of this commit:
 cvs rdiff -u -r1.34.6.3 -r1.34.6.4 \
     src/crypto/external/bsd/openssh/lib/Makefile
 cvs rdiff -u -r1.8 -r1.8.36.1 src/distrib/utils/x_ping/Makefile
 cvs rdiff -u -r1.2940.2.5 -r1.2940.2.6 src/doc/CHANGES
 cvs rdiff -u -r1.1 -r1.1.2.1 \
     src/external/apache2/argon2/lib/libargon2/Makefile.inc
 cvs rdiff -u -r1.15 -r1.15.2.1 src/external/bsd/jemalloc/lib/Makefile.inc
 cvs rdiff -u -r1.12 -r1.12.10.1 \
     src/external/bsd/mdocml/lib/libmandoc/Makefile
 cvs rdiff -u -r1.8 -r1.8.6.1 \
     src/external/gpl3/binutils.old/lib/libbfd/Makefile
 cvs rdiff -u -r1.13 -r1.13.6.1 \
     src/external/gpl3/binutils/dist/gas/config/tc-vax.c
 cvs rdiff -u -r1.8 -r1.8.6.1 \
     src/external/gpl3/binutils/dist/gas/config/tc-vax.h
 cvs rdiff -u -r1.24 -r1.24.2.1 src/external/gpl3/binutils/lib/libbfd/Makefile
 cvs rdiff -u -r1.15 -r1.15.2.1 src/external/gpl3/gcc/dist/gcc/dse.c
 cvs rdiff -u -r1.1.1.17.2.1 -r1.1.1.17.2.2 \
     src/external/gpl3/gcc/dist/gcc/function.c
 cvs rdiff -u -r1.1.1.12 -r1.1.1.12.6.1 src/external/gpl3/gcc/dist/gcc/recog.c
 cvs rdiff -u -r1.12 -r1.12.2.1 src/external/gpl3/gcc/dist/gcc/reload.c \
     src/external/gpl3/gcc/dist/gcc/rtlanal.c
 cvs rdiff -u -r1.1.1.10 -r1.1.1.10.2.1 \
     src/external/gpl3/gcc/dist/gcc/target.def
 cvs rdiff -u -r1.10 -r1.10.6.1 src/external/gpl3/gcc/dist/gcc/targhooks.c
 cvs rdiff -u -r1.1.1.10 -r1.1.1.10.6.1 \
     src/external/gpl3/gcc/dist/gcc/targhooks.h
 cvs rdiff -u -r1.12 -r1.12.6.1 \
     src/external/gpl3/gcc/dist/gcc/config/vax/builtins.md
 cvs rdiff -u -r1.11 -r1.11.6.1 \
     src/external/gpl3/gcc/dist/gcc/config/vax/elf.h
 cvs rdiff -u -r1.22 -r1.22.6.1 \
     src/external/gpl3/gcc/dist/gcc/config/vax/vax.c
 cvs rdiff -u -r1.17 -r1.17.6.1 \
     src/external/gpl3/gcc/dist/gcc/config/vax/vax.md
 cvs rdiff -u -r1.1.1.13 -r1.1.1.13.2.1 \
     src/external/gpl3/gcc/dist/gcc/doc/tm.texi
 cvs rdiff -u -r1.1.1.12 -r1.1.1.12.2.1 \
     src/external/gpl3/gcc/dist/gcc/doc/tm.texi.in
 cvs rdiff -u -r1.16 -r1.16.6.1 src/external/gpl3/gcc/lib/Makefile.sanitizer
 cvs rdiff -u -r1.33 -r1.33.6.1 src/external/gpl3/gcc/lib/libasan/Makefile
 cvs rdiff -u -r1.8 -r1.8.6.1 src/external/gpl3/gcc/lib/liblsan/Makefile
 cvs rdiff -u -r1.19 -r1.19.6.1 src/external/gpl3/gcc/lib/libubsan/Makefile
 cvs rdiff -u -r1.66.2.1 -r1.66.2.2 \
     src/external/gpl3/gcc/usr.bin/backend/Makefile
 cvs rdiff -u -r1.20 -r1.20.6.1 src/external/gpl3/gcc/usr.bin/cc1/Makefile
 cvs rdiff -u -r1.18 -r1.18.6.1 src/external/gpl3/gcc/usr.bin/cc1obj/Makefile
 cvs rdiff -u -r1.3 -r1.3.6.1 \
     src/external/gpl3/gcc/usr.bin/cc1objplus/Makefile
 cvs rdiff -u -r1.17 -r1.17.6.1 src/external/gpl3/gcc/usr.bin/cc1plus/Makefile
 cvs rdiff -u -r1.7 -r1.7.26.1 src/external/gpl3/gcc/usr.bin/gcc/Makefile
 cvs rdiff -u -r1.8.2.1 -r1.8.2.2 \
     src/external/gpl3/gcc/usr.bin/libdecnumber/Makefile
 cvs rdiff -u -r1.1 -r1.1.6.1 src/external/gpl3/gcc/usr.bin/lto-dump/Makefile
 cvs rdiff -u -r1.7 -r1.7.6.1 src/external/gpl3/gcc/usr.bin/lto1/Makefile
 cvs rdiff -u -r1.8 -r1.8.6.1 \
     src/external/gpl3/gdb.old/lib/libdecnumber/Makefile
 cvs rdiff -u -r1.3 -r1.3.36.1 src/external/gpl3/gdb/lib/libdecnumber/Makefile
 cvs rdiff -u -r1.32 -r1.32.2.1 src/external/gpl3/gdb/lib/libgdb/Makefile
 cvs rdiff -u -r1.48.2.1 -r1.48.2.2 src/external/mit/xorg/lib/gallium/Makefile
 cvs rdiff -u -r1.4.2.1 -r1.4.2.2 \
     src/external/mit/xorg/lib/gallium.old/Makefile
 cvs rdiff -u -r1.25 -r1.25.2.1 \
     src/external/mit/xorg/lib/libX11/Makefile.libx11
 cvs rdiff -u -r1.12 -r1.12.2.1 src/games/gomoku/Makefile
 cvs rdiff -u -r1.37 -r1.37.34.1 src/games/phantasia/Makefile
 cvs rdiff -u -r1.4 -r1.4.52.1 src/lib/i18n_module/UTF7/Makefile
 cvs rdiff -u -r1.20 -r1.20.8.1 src/lib/libbz2/Makefile
 cvs rdiff -u -r1.12 -r1.12.2.1 src/lib/libc/gdtoa/Makefile.inc
 cvs rdiff -u -r1.34 -r1.34.2.1 src/lib/libcrypt/Makefile
 cvs rdiff -u -r1.144.2.1 -r1.144.2.2 src/libexec/ld.elf_so/Makefile
 cvs rdiff -u -r1.2 -r1.2.8.1 src/sbin/fsck_ffs/Makefile.common
 cvs rdiff -u -r1.41 -r1.41.6.1 src/sbin/fsdb/Makefile
 cvs rdiff -u -r1.6 -r1.6.36.1 src/sbin/newfs_ext2fs/Makefile
 cvs rdiff -u -r1.17 -r1.17.36.1 src/sbin/ping/Makefile
 cvs rdiff -u -r1.85 -r1.85.20.1 src/sys/arch/vax/conf/Makefile.vax
 cvs rdiff -u -r1.95 -r1.95.12.1 src/sys/lib/libsa/Makefile
 cvs rdiff -u -r1.23 -r1.23.32.1 src/sys/lib/libz/Makefile
 cvs rdiff -u -r1.10 -r1.10.30.1 src/sys/modules/lfs/Makefile
 cvs rdiff -u -r1.17 -r1.17.20.1 src/sys/rump/fs/lib/liblfs/Makefile
 cvs rdiff -u -r1.105 -r1.105.2.1 src/tools/gcc/Makefile
 cvs rdiff -u -r1.12 -r1.12.6.1 src/usr.sbin/mtrace/Makefile

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: [netbsd-10] src/external/gpl3/gcc/dist/gcc
Date: Sun, 8 Oct 2023 18:44:48 +0000

 Module Name:	src
 Committed By:	martin
 Date:		Sun Oct  8 18:44:48 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc/dist/gcc [netbsd-10]: dse.c

 Log Message:
 Pull up following revision(s) (requested by rin in ticket #394):
 [accidentaly skiped during initial pullup handling]

 	external/gpl3/gcc.old/dist/gcc/dse.c: revision 1.15
 	external/gpl3/gcc.old/dist/gcc/dse.c: revision 1.16
 	(applied to external/gpl3/gcc/dist/gcc/dse.c)

 gcc.old: Fix my regression for PR port-vax/57646 patch [5/21]
 Add a part of the original diff provided by Kalvis Duckmanton,
 which I carelessly dropped during NB_FIX_VAX_BACKEND addition.

 Fix ICE in DSE phase for native GCC. Now, pkgsrc/lang/perl5
 successfully builds again.

 gcc.old: Clarify PR port-vax/57646 patch [5/21]. NFC
 Restore ``else'' in the original patch. NFC but better to fit into
 upstream code here.


 To generate a diff of this commit:
 cvs rdiff -u -r1.15.2.1 -r1.15.2.2 src/external/gpl3/gcc/dist/gcc/dse.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old
Date: Mon, 9 Oct 2023 12:27:00 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Mon Oct  9 12:26:59 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/lib/libgcc/arch/vax: auto-target.h
 	src/external/gpl3/gcc.old/lib/libiberty: defs.mk
 	src/external/gpl3/gcc.old/lib/libstdc++-v3/arch/vax: gstdint.h
 	src/external/gpl3/gcc.old/usr.bin/gcc/arch/vax: configargs.h

 Log Message:
 gcc.old: vax: mknative for PR port-vax/57646

 Summary of changes:

 (1) HAVE_AS_CFI_SECTIONS becomes defined.
 (2) mempcpy.o is dropped as mempcpy(3) was added to -current
     (but not to netbsd-10).
 (3) working directories in usr.bin/gcc/arch/vax/configargs.h.

 (1) will be pulled up into netbsd-10. I've confirmed that
 pkgsrc/lang/perl5 builds and works as before with this change.

 For now, (3) is reverted by hand. It would be better to improve mknative
 not to leak working directories. But it should be NFC anyway.

 For vax, mknative for binutils and gdb does not brings about significant
 changes.

 For other platforms, mknative for gcc.old makes no significant changes
 (actually confirmed only for evbarm64, but it should be enough).

 Thanks mrg@ for suggestion.


 To generate a diff of this commit:
 cvs rdiff -u -r1.10 -r1.11 \
     src/external/gpl3/gcc.old/lib/libgcc/arch/vax/auto-target.h
 cvs rdiff -u -r1.14 -r1.15 src/external/gpl3/gcc.old/lib/libiberty/defs.mk
 cvs rdiff -u -r1.14 -r1.15 \
     src/external/gpl3/gcc.old/lib/libstdc++-v3/arch/vax/gstdint.h
 cvs rdiff -u -r1.16 -r1.17 \
     src/external/gpl3/gcc.old/usr.bin/gcc/arch/vax/configargs.h

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: [netbsd-10] src/external/gpl3/gcc
Date: Mon, 9 Oct 2023 12:44:42 +0000

 Module Name:	src
 Committed By:	martin
 Date:		Mon Oct  9 12:44:42 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc/lib/libgcc/arch/vax [netbsd-10]: auto-target.h
 	src/external/gpl3/gcc/lib/libstdc++-v3/arch/vax [netbsd-10]: gstdint.h
 	src/external/gpl3/gcc/usr.bin/gcc/arch/vax [netbsd-10]: configargs.h

 Log Message:
 Pull up following revision(s) (requested by rin in ticket #399):

 	external/gpl3/gcc.old/lib/libgcc/arch/vax/auto-target.h: revision 1.11
 	external/gpl3/gcc.old/usr.bin/gcc/arch/vax/configargs.h: revision 1.17
 	external/gpl3/gcc.old/lib/libstdc++-v3/arch/vax/gstdint.h: revision 1.15
 	(applied to external/gpl3/gcc/)

 gcc: vax: mknative for PR port-vax/57646

 Summary of changes:
 (1) HAVE_AS_CFI_SECTIONS becomes defined.


 To generate a diff of this commit:
 cvs rdiff -u -r1.7 -r1.7.6.1 \
     src/external/gpl3/gcc/lib/libgcc/arch/vax/auto-target.h
 cvs rdiff -u -r1.25.2.1 -r1.25.2.2 \
     src/external/gpl3/gcc/lib/libstdc++-v3/arch/vax/gstdint.h
 cvs rdiff -u -r1.40.2.1 -r1.40.2.2 \
     src/external/gpl3/gcc/usr.bin/gcc/arch/vax/configargs.h

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/binutils.old/dist/gas/config
Date: Sat, 25 Nov 2023 12:05:22 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Nov 25 12:05:22 UTC 2023

 Modified Files:
 	src/external/gpl3/binutils.old/dist/gas/config: tc-vax.c

 Log Message:
 binutils.old/gas: vax: Cherry-pick upstream commits for binutils-gdb:30715

 PR port-vax/57646: Import major vax toolchain fix by Kalvis Duckmanton

 Taken from binutils/gas:
 https://mail-index.netbsd.org/source-changes/2023/10/07/msg147931.html


 To generate a diff of this commit:
 cvs rdiff -u -r1.7 -r1.8 \
     src/external/gpl3/binutils.old/dist/gas/config/tc-vax.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/binutils.old/dist/gas/config
Date: Sat, 25 Nov 2023 12:06:43 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Nov 25 12:06:43 UTC 2023

 Modified Files:
 	src/external/gpl3/binutils.old/dist/gas/config: tc-vax.c tc-vax.h

 Log Message:
 binutils.old/gas: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [10/21]

 Try not to emit relocations in the .eh_frame section

 Taken from binutils/gas:
 https://mail-index.netbsd.org/source-changes/2023/10/07/msg147941.html


 To generate a diff of this commit:
 cvs rdiff -u -r1.8 -r1.9 \
     src/external/gpl3/binutils.old/dist/gas/config/tc-vax.c
 cvs rdiff -u -r1.7 -r1.8 \
     src/external/gpl3/binutils.old/dist/gas/config/tc-vax.h

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/binutils.old/dist/gas/config
Date: Sat, 25 Nov 2023 12:07:58 +0000

 Module Name:	src
 Committed By:	rin
 Date:		Sat Nov 25 12:07:58 UTC 2023

 Modified Files:
 	src/external/gpl3/binutils.old/dist/gas/config: tc-vax.c

 Log Message:
 binutils.old/gas: vax: PR port-vax/57646 patch provided by Kalvis Duckmanton [11/21]

 PR toolchain/43314: pc relative relocations are "off by 1*size" on vax

 Address http://gnats.netbsd.org/43314

 Taken from binutils/gas:
 https://mail-index.netbsd.org/source-changes/2023/10/07/msg147942.html


 To generate a diff of this commit:
 cvs rdiff -u -r1.9 -r1.10 \
     src/external/gpl3/binutils.old/dist/gas/config/tc-vax.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Kalvis Duckmanton" <kalvisd@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: src/external/gpl3/gcc.old/dist/gcc
Date: Mon, 18 Dec 2023 21:11:43 +0000

 Module Name:	src
 Committed By:	kalvisd
 Date:		Mon Dec 18 21:11:43 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc.old/dist/gcc: reload1.c

 Log Message:
 gcc.old: vax: gcc/reload1.c: PR port-vax/57646

     Where an output register might be reloaded, and it is a memory
     reference, and the address is auto-incremented, any previously
     reloaded copy of the address must be invalidated.

     XXXKD: Hidden within ``#ifdef NB_FIX_VAX_BACKEND'' and enabled
     only for vax at the moment.


 To generate a diff of this commit:
 cvs rdiff -u -r1.11 -r1.12 src/external/gpl3/gcc.old/dist/gcc/reload1.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/57646 CVS commit: [netbsd-10] src/external/gpl3/gcc/dist/gcc
Date: Tue, 19 Dec 2023 12:24:21 +0000

 Module Name:	src
 Committed By:	martin
 Date:		Tue Dec 19 12:24:21 UTC 2023

 Modified Files:
 	src/external/gpl3/gcc/dist/gcc [netbsd-10]: reload1.c

 Log Message:
 Pull up following revision(s) (requested by kalvisd in ticket #507):

 	external/gpl3/gcc.old/dist/gcc/reload1.c: revision 1.12
 	(applied to external/gpl3/gcc/dist/gcc/reload1.c)

 gcc: vax: gcc/reload1.c: PR port-vax/57646
     Where an output register might be reloaded, and it is a memory
     reference, and the address is auto-incremented, any previously
     reloaded copy of the address must be invalidated.
     XXXKD: Hidden within ``#ifdef NB_FIX_VAX_BACKEND'' and enabled
     only for vax at the moment.


 To generate a diff of this commit:
 cvs rdiff -u -r1.9 -r1.9.6.1 src/external/gpl3/gcc/dist/gcc/reload1.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.47 2022/09/11 19:34:41 kim Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2023 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.