get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/1.1/patches/2230235/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 2230235,
    "url": "http://patchwork.ozlabs.org/api/1.1/patches/2230235/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/gcc/patch/ydda4ulamtr.fsf@CeBiTec.Uni-Bielefeld.DE/",
    "project": {
        "id": 17,
        "url": "http://patchwork.ozlabs.org/api/1.1/projects/17/?format=api",
        "name": "GNU Compiler Collection",
        "link_name": "gcc",
        "list_id": "gcc-patches.gcc.gnu.org",
        "list_email": "gcc-patches@gcc.gnu.org",
        "web_url": null,
        "scm_url": null,
        "webscm_url": null
    },
    "msgid": "<ydda4ulamtr.fsf@CeBiTec.Uni-Bielefeld.DE>",
    "date": "2026-04-29T14:00:16",
    "name": "[1/6] Remove HAVE_GNU_AS",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "242156fac5d962fa72be70b58656add1d6e77eb3",
    "submitter": {
        "id": 4362,
        "url": "http://patchwork.ozlabs.org/api/1.1/people/4362/?format=api",
        "name": "Rainer Orth",
        "email": "ro@CeBiTec.Uni-Bielefeld.DE"
    },
    "delegate": null,
    "mbox": "http://patchwork.ozlabs.org/project/gcc/patch/ydda4ulamtr.fsf@CeBiTec.Uni-Bielefeld.DE/mbox/",
    "series": [
        {
            "id": 502070,
            "url": "http://patchwork.ozlabs.org/api/1.1/series/502070/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/gcc/list/?series=502070",
            "date": "2026-04-29T13:59:25",
            "name": "Remove HAVE_GNU_{AS,LD} etc.",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/502070/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/2230235/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/2230235/checks/",
    "tags": {},
    "headers": {
        "Return-Path": "<gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org>",
        "X-Original-To": [
            "incoming@patchwork.ozlabs.org",
            "gcc-patches@gcc.gnu.org"
        ],
        "Delivered-To": [
            "patchwork-incoming@legolas.ozlabs.org",
            "gcc-patches@gcc.gnu.org"
        ],
        "Authentication-Results": [
            "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=cebitec.uni-bielefeld.de header.i=@cebitec.uni-bielefeld.de\n header.a=rsa-sha256 header.s=20200306 header.b=gJsRp4JM;\n\tdkim-atps=neutral",
            "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org\n (client-ip=2620:52:6:3111::32; helo=vm01.sourceware.org;\n envelope-from=gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org;\n receiver=patchwork.ozlabs.org)",
            "sourceware.org;\n\tdkim=pass (2048-bit key,\n unprotected) header.d=cebitec.uni-bielefeld.de header.i=@cebitec.uni-bielefeld.de\n header.a=rsa-sha256 header.s=20200306 header.b=gJsRp4JM",
            "sourceware.org; dmarc=none (p=none dis=none)\n header.from=CeBiTec.Uni-Bielefeld.DE",
            "sourceware.org;\n spf=pass smtp.mailfrom=cebitec.uni-bielefeld.de",
            "server2.sourceware.org;\n arc=none smtp.remote-ip=129.70.160.84"
        ],
        "Received": [
            "from vm01.sourceware.org (vm01.sourceware.org\n [IPv6:2620:52:6:3111::32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g5JqW1qpRz1yHZ\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 30 Apr 2026 00:00:55 +1000 (AEST)",
            "from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 366024BABF2D\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 29 Apr 2026 14:00:53 +0000 (GMT)",
            "from smtp.CeBiTec.Uni-Bielefeld.DE (smtp.CeBiTec.Uni-Bielefeld.DE\n [129.70.160.84])\n by sourceware.org (Postfix) with ESMTPS id 7153A4BB3BEF\n for <gcc-patches@gcc.gnu.org>; Wed, 29 Apr 2026 14:00:19 +0000 (GMT)",
            "from localhost (localhost.CeBiTec.Uni-Bielefeld.DE [127.0.0.1])\n by smtp.CeBiTec.Uni-Bielefeld.DE (Postfix) with ESMTP id 97EC4C1FDB;\n Wed, 29 Apr 2026 16:00:18 +0200 (CEST)",
            "from smtp.CeBiTec.Uni-Bielefeld.DE ([127.0.0.1])\n by localhost (smtp.cebitec.uni-bielefeld.de [127.0.0.1]) (amavisd-new,\n port 10026)\n with ESMTP id lmjhqE-3S1Xu; Wed, 29 Apr 2026 16:00:17 +0200 (CEST)",
            "from manam.CeBiTec.Uni-Bielefeld.DE (p508551ea.dip0.t-ipconnect.de\n [80.133.81.234]) (Authenticated sender: ro)\n by smtp.CeBiTec.Uni-Bielefeld.DE (Postfix) with ESMTPSA id 48AC7C1FDA;\n Wed, 29 Apr 2026 16:00:17 +0200 (CEST)"
        ],
        "DKIM-Filter": [
            "OpenDKIM Filter v2.11.0 sourceware.org 366024BABF2D",
            "OpenDKIM Filter v2.11.0 sourceware.org 7153A4BB3BEF"
        ],
        "DMARC-Filter": "OpenDMARC Filter v1.4.2 sourceware.org 7153A4BB3BEF",
        "ARC-Filter": "OpenARC Filter v1.0.0 sourceware.org 7153A4BB3BEF",
        "ARC-Seal": "i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1777471219; cv=none;\n b=tSOhjw/vG1PLjhgzn5Meu6WmU9ZDZM9Ygbg4IGh/VBY0wUUba14JypQ+s6hR4iID9qOtHEae4LlXXM8+acj171PY0PQDb7nwahTzXESx/jcZC/SlAxLl+BjoC2m/uCP8GSQhRi+vLKi+8QKAEB7mlAbCQm7tfEbBTJEG9o03Ens=",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1777471219; c=relaxed/simple;\n bh=A+NAljBst0dukU7UoJUtE29X7L0h0hq1GU0PsUVNDU4=;\n h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version;\n b=mqR4Y+V9NGdJsd0lFlGUCwxbocNlpTnvo74PG1SVWGJUgwtPxd+epIMLOp0jFqbyPHkaalVhK1CkzkL009IDsF8udw7pV9Zeo2dCMsN/W1Nk7qYo0J69Y/BBNzK6mY4wk1KeJx20kdaXNuEaaHkUgjr75W5CablBpGAzFTuBSEE=",
        "ARC-Authentication-Results": "i=1; server2.sourceware.org",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=\n cebitec.uni-bielefeld.de; h=content-type:content-type\n :mime-version:user-agent:message-id:date:date:subject:subject\n :from:from:received:received; s=20200306; t=1777471217; bh=A+NAl\n jBst0dukU7UoJUtE29X7L0h0hq1GU0PsUVNDU4=; b=gJsRp4JMjjnpBl0YrrwLe\n s24BdVwZH48UOMw09GixkSoOz5JiaSOZxeWtlAEvmQmNKjAOOjZUCSVpqZuqjsxb\n kwxkjN28NSNC7vXoTlpLTV65o6nbMxpTVsKoCEIyWKrNBBDeVTbOjMkNy4qqzKfK\n O6p2EiWTrDI8POzR1Ks3IS0yJtmWSizxyWtzt8r2soCZu8bEcsiV/ab/kOsnVJGL\n gDLh/sW8lV1FMSQ/+v9pCyWGRiCKkmrWD9asQzDk/6PxPMNQJyem/CqdO7yDeg3u\n 46KxrEx9r1ozrmeQLqFOYmEl8ZEF6iUjawiPMHVRYUCLz0sEcwfhvRvDEqO6xEPy\n A==",
        "X-Virus-Scanned": "amavisd-new at cebitec.uni-bielefeld.de",
        "From": "Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>",
        "To": "gcc-patches@gcc.gnu.org",
        "Cc": "Iain Sandoe <iain@sandoe.co.uk>, John David Anglin\n <dave.anglin@bell.net>, Thomas Schwinge <tschwinge@baylibre.com>, David\n Edelsohn <dje.gcc@gmail.com>",
        "Subject": "[PATCH 1/6] Remove HAVE_GNU_AS",
        "Date": "Wed, 29 Apr 2026 16:00:16 +0200",
        "Message-ID": "<ydda4ulamtr.fsf@CeBiTec.Uni-Bielefeld.DE>",
        "User-Agent": "Gnus/5.13 (Gnus v5.13)",
        "MIME-Version": "1.0",
        "Content-Type": "multipart/mixed; boundary=\"=-=-=\"",
        "X-BeenThere": "gcc-patches@gcc.gnu.org",
        "X-Mailman-Version": "2.1.30",
        "Precedence": "list",
        "List-Id": "Gcc-patches mailing list <gcc-patches.gcc.gnu.org>",
        "List-Unsubscribe": "<https://gcc.gnu.org/mailman/options/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe>",
        "List-Archive": "<https://gcc.gnu.org/pipermail/gcc-patches/>",
        "List-Post": "<mailto:gcc-patches@gcc.gnu.org>",
        "List-Help": "<mailto:gcc-patches-request@gcc.gnu.org?subject=help>",
        "List-Subscribe": "<https://gcc.gnu.org/mailman/listinfo/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe>",
        "Errors-To": "gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org"
    },
    "content": "This patch removes or replaces the remaining uses of HAVE_GNU_AS:\n\n* gcc.cc (asm_options) has a sub-spec to map the gcc -v/-w/-I options to\n  their assembler equivalents.  It is replaced by ASM_V_SPEC, defaulting\n  to the gas version.  Non-gas configurations define their own versions.\n\n* Darwin has ASM_OPTIONS which is identical to the default ASM_V_SPEC\n  and can just be removed.\n\n* sol2.h currently handles -v in ASM_SPEC_BASE.  I'll fully handle this\n  via ASM_V_SPEC in a follow-up patch.\n\n* ia64/hpux.h guards AS_NEEDS_DASH_FOR_PIPED_INPUT with !HAVE_GNU_AS,\n  but according to install.texi ia64-*-hpux* requires gas so this can\n  just go.\n\n* nvptx/nvptx.h handles the mapping in ASM_SPEC.  This is done in\n  ASM_V_SPEC now.  The nvptx as has no equivalents of -w and -I.\n\n* AIX as only supports -v and -W, so rs6000/aix.h gets a matching\n  ASM_V_SPEC.\n\nOk for trunk?\n\n\tRainer",
    "diff": "# HG changeset patch\n# Parent  57fdbd314570a43cd237cc88aa77d09908bac9a0\nRemove HAVE_GNU_AS\n\ndiff --git a/gcc/config.in b/gcc/config.in\n--- a/gcc/config.in\n+++ b/gcc/config.in\n@@ -1610,12 +1610,6 @@\n #endif\n \n \n-/* Define to 1 if using GNU as. */\n-#ifndef USED_FOR_TARGET\n-#undef HAVE_GNU_AS\n-#endif\n-\n-\n /* Define if your system supports gnu indirect functions. */\n #ifndef USED_FOR_TARGET\n #undef HAVE_GNU_INDIRECT_FUNCTION\ndiff --git a/gcc/config/darwin.h b/gcc/config/darwin.h\n--- a/gcc/config/darwin.h\n+++ b/gcc/config/darwin.h\n@@ -663,21 +663,12 @@ extern GTY(()) int darwin_ms_struct;\n #define ASM_MMACOSX_VERSION_MIN_SPEC \" %<asm_macosx_version_min=* \"\n #endif\n \n-#if HAVE_GNU_AS\n-/* The options are added in gcc.cc for this case.  */\n-#define ASM_OPTIONS \"\"\n-#else\n-/* When we detect that we're cctools or llvm as, we need to insert the right\n-   additional options.  Actually, currently these are the same as GAS.  */\n-#define ASM_OPTIONS \"%{v} %{w:-W} %{I*}\"\n-#endif\n-\n #define AS_NEEDS_DASH_FOR_PIPED_INPUT\n \n /* Default Darwin ASM_SPEC, very simple. */\n #define ASM_SPEC \\\n \"%{static} -arch %(darwin_arch) \" \\\n-ASM_OPTIONS ASM_MMACOSX_VERSION_MIN_SPEC\n+ASM_MMACOSX_VERSION_MIN_SPEC\n \n #define ASM_DEBUG_SPEC  \"\"\n #undef  ASM_DEBUG_OPTION_SPEC\ndiff --git a/gcc/config/i386/darwin.h b/gcc/config/i386/darwin.h\n--- a/gcc/config/i386/darwin.h\n+++ b/gcc/config/i386/darwin.h\n@@ -105,7 +105,7 @@ along with GCC; see the file COPYING3.  \n #undef ASM_SPEC\n #define ASM_SPEC \\\n \"%{static} -arch %(darwin_arch) \" \\\n- ASM_OPTIONS ASM_MMACOSX_VERSION_MIN_SPEC EXTRA_ASM_OPTS \\\n+ ASM_MMACOSX_VERSION_MIN_SPEC EXTRA_ASM_OPTS \\\n \"%{!force_cpusubtype_ALL:-force_cpusubtype_ALL} \"\n \n #undef ENDFILE_SPEC\ndiff --git a/gcc/config/ia64/hpux.h b/gcc/config/ia64/hpux.h\n--- a/gcc/config/ia64/hpux.h\n+++ b/gcc/config/ia64/hpux.h\n@@ -62,10 +62,6 @@ do {\t\t\t\t\t\t\t\\\n #undef  ASM_EXTRA_SPEC\n #define ASM_EXTRA_SPEC \"%{milp32:-milp32} %{mlp64:-mlp64}\"\n \n-#ifndef HAVE_GNU_AS\n-#define AS_NEEDS_DASH_FOR_PIPED_INPUT\n-#endif\n-\n #ifndef CROSS_DIRECTORY_STRUCTURE\n #undef MD_EXEC_PREFIX\n #define MD_EXEC_PREFIX \"/usr/ccs/bin/\"\ndiff --git a/gcc/config/nvptx/nvptx.h b/gcc/config/nvptx/nvptx.h\n--- a/gcc/config/nvptx/nvptx.h\n+++ b/gcc/config/nvptx/nvptx.h\n@@ -31,9 +31,8 @@\n #define OPTION_DEFAULT_SPECS \\\n   { \"arch\", \"%{!misa=*:-misa=%(VALUE)}\" }, \\\n \n-/* Assembler supports '-v' option; handle similar to\n-   '../../gcc.cc:asm_options', 'HAVE_GNU_AS'.  */\n-#define ASM_SPEC \"%{v}\"\n+/* Assembler only supports '-v' option.  */\n+#define ASM_V_SPEC \"%{v}\"\n \n #define STARTFILE_SPEC \"%{mmainkernel:crt0.o%s}\"\n \ndiff --git a/gcc/config/rs6000/aix.h b/gcc/config/rs6000/aix.h\n--- a/gcc/config/rs6000/aix.h\n+++ b/gcc/config/rs6000/aix.h\n@@ -177,6 +177,8 @@\n #undef ASM_DEFAULT_SPEC\n #define ASM_DEFAULT_SPEC \"\"\n \n+#define ASM_V_SPEC \"%{v} %{w:-W}\"\n+\n /* Tell the assembler to assume that all undefined names are external.\n \n    Don't do this until the fixed IBM assembler is more generally available.\ndiff --git a/gcc/config/sol2.h b/gcc/config/sol2.h\n--- a/gcc/config/sol2.h\n+++ b/gcc/config/sol2.h\n@@ -447,9 +447,12 @@ along with GCC; see the file COPYING3.  \n #undef TARGET_ASM_ASSEMBLE_VISIBILITY\n #define TARGET_ASM_ASSEMBLE_VISIBILITY solaris_assemble_visibility\n \n-#define AS_NEEDS_DASH_FOR_PIPED_INPUT\n+/* Handled in ASM_SPEC_BASE.  */\n+#define ASM_V_SPEC \"\"\n \n+#define AS_NEEDS_DASH_FOR_PIPED_INPUT\n #endif\n+\n /* Solaris has an implementation of __enable_execute_stack.  */\n #define HAVE_ENABLE_EXECUTE_STACK\n \ndiff --git a/gcc/configure b/gcc/configure\n--- a/gcc/configure\n+++ b/gcc/configure\n@@ -13126,13 +13126,6 @@ cat >>confdefs.h <<_ACEOF\n _ACEOF\n \n \n-gnu_as_bool=`if test x\"$gas\" = x\"yes\"; then echo 1; else echo 0; fi`\n-\n-cat >>confdefs.h <<_ACEOF\n-#define HAVE_GNU_AS $gnu_as_bool\n-_ACEOF\n-\n-\n count=a\n for f in $host_xm_file; do\n \tcount=${count}x\ndiff --git a/gcc/configure.ac b/gcc/configure.ac\n--- a/gcc/configure.ac\n+++ b/gcc/configure.ac\n@@ -2035,9 +2035,6 @@ fi\n gnu_ld_bool=`if test x\"$gnu_ld\" = x\"yes\"; then echo 1; else echo 0; fi`\n AC_DEFINE_UNQUOTED(HAVE_GNU_LD, $gnu_ld_bool, [Define to 1 if using GNU ld.])\n \n-gnu_as_bool=`if test x\"$gas\" = x\"yes\"; then echo 1; else echo 0; fi`\n-AC_DEFINE_UNQUOTED(HAVE_GNU_AS, $gnu_as_bool, [Define to 1 if using GNU as.])\n-\n count=a\n for f in $host_xm_file; do\n \tcount=${count}x\ndiff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi\n--- a/gcc/doc/tm.texi\n+++ b/gcc/doc/tm.texi\n@@ -232,6 +232,15 @@ See the file @file{sun3.h} for an exampl\n Do not define this macro if it does not need to do anything.\n @end defmac\n \n+@defmac ASM_V_SPEC\n+A C string constant that tells the GCC driver how to translate the\n+@option{-v}, @option{-w}, and @option{-I} options into their assembler\n+equivalents.\n+\n+Only define this macro if the default, which matches GNU as, isn't\n+appropriate.\n+@end defmac\n+\n @defmac ASM_FINAL_SPEC\n A C string constant that tells the GCC driver program how to\n run any programs which cleanup after the normal assembler.\ndiff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in\n--- a/gcc/doc/tm.texi.in\n+++ b/gcc/doc/tm.texi.in\n@@ -232,6 +232,15 @@ See the file @file{sun3.h} for an exampl\n Do not define this macro if it does not need to do anything.\n @end defmac\n \n+@defmac ASM_V_SPEC\n+A C string constant that tells the GCC driver how to translate the\n+@option{-v}, @option{-w}, and @option{-I} options into their assembler\n+equivalents.\n+\n+Only define this macro if the default, which matches GNU as, isn't\n+appropriate.\n+@end defmac\n+\n @defmac ASM_FINAL_SPEC\n A C string constant that tells the GCC driver program how to\n run any programs which cleanup after the normal assembler.\ndiff --git a/gcc/gcc.cc b/gcc/gcc.cc\n--- a/gcc/gcc.cc\n+++ b/gcc/gcc.cc\n@@ -709,6 +709,12 @@ proper position among the other output f\n #define ASM_SPEC \"\"\n #endif\n \n+/* config.h can define ASM_V_SPEC to pass equivalents of -v, -w (no warnings),\n+   and -I to the assembler.  */\n+#ifndef ASM_V_SPEC\n+#define ASM_V_SPEC \"%{v} %{w:-W} %{I*}\"\n+#endif\n+\n /* config.h can define ASM_FINAL_SPEC to run a post processor after\n    the assembler has run.  */\n #ifndef ASM_FINAL_SPEC\n@@ -1327,12 +1333,8 @@ static const char *cc1_options =\n \n static const char *asm_options =\n \"%{-target-help:%:print-asm-header()} \"\n-#if HAVE_GNU_AS\n-/* If GNU AS is used, then convert -w (no warnings), -I, and -v\n-   to the assembler equivalents.  */\n-\"%{v} %{w:-W} %{I*} \"\n-#endif\n-\"%(asm_debug_option)\"\n+ASM_V_SPEC\n+\" %(asm_debug_option)\"\n ASM_COMPRESS_DEBUG_SPEC\n \"%a %Y %{c:%W{o*}%{!o*:-o %w%b%O}}%{!c:-o %d%w%u%O}\";\n \n",
    "prefixes": [
        "1/6"
    ]
}