From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2050.outbound.protection.outlook.com [40.107.22.50]) by sourceware.org (Postfix) with ESMTPS id 3A2453858D28 for ; Wed, 15 Feb 2023 18:34:13 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 3A2453858D28 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Eu9i7ZnxbZ5Zc+ExDaZB8QLwentFF5+vwn+dTPi8oRI=; b=FYdYnDg/cI8rmLQxqITX8WQvTnHDs7oclPIX/Efu9rnnpiFNO4YuhMBQjH8m4KML30jXRTWX+tPRWYayp5AHmDE/M2jH0I5h9/VZK+ZyOTcOVCkQ4Mm3+QcZxNUGGnDkatZMo4bzUAt/X2oSjolEecMSF8cQiw/jl5P36JJl71M= Received: from AM5P194CA0023.EURP194.PROD.OUTLOOK.COM (2603:10a6:203:8f::33) by DU0PR08MB7662.eurprd08.prod.outlook.com (2603:10a6:10:318::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6086.26; Wed, 15 Feb 2023 18:34:10 +0000 Received: from AM7EUR03FT056.eop-EUR03.prod.protection.outlook.com (2603:10a6:203:8f:cafe::2d) by AM5P194CA0023.outlook.office365.com (2603:10a6:203:8f::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6086.26 via Frontend Transport; Wed, 15 Feb 2023 18:34:10 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT056.mail.protection.outlook.com (100.127.140.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6111.12 via Frontend Transport; Wed, 15 Feb 2023 18:34:09 +0000 Received: ("Tessian outbound 8038f0863a52:v132"); Wed, 15 Feb 2023 18:34:09 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 45643e4a347fedf3 X-CR-MTA-TID: 64aa7808 Received: from 4cc9651fae58.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 339AB59B-8F06-45A2-BD9A-A91BE0A91F70.1; Wed, 15 Feb 2023 18:34:02 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 4cc9651fae58.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 15 Feb 2023 18:34:02 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iJQkX5sOQavWIUZ8PLH/JtYg3OshGGstPzhhv0tVdoKWtrN5pVHfdDQamwpW2KoTMzC1tWItt/Tkp/w1LY6TC3Hruma+WYPgroB6Y8cI5rpRp5R7KLpyRvYzYCIFGPTZJo2HEAvL4ae6VcMcL1YWrYM+Jqfr8PY5tm67+K/KHHNxpX90YqsCzOUGJepvTOUj4dpXpG1c7fnPyNV+QvToAlfpsrdyzBfpRedbRfCZtIitVBcgule1UIFuJhtkFxyFd9jeVlguLya1aV4IoEmJf6u/Kax8i9TsNi7XXDDSFxFa9aiIygqHjwEitOpWKwRFnokd9ONCORHYxHTH5NU0+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Eu9i7ZnxbZ5Zc+ExDaZB8QLwentFF5+vwn+dTPi8oRI=; b=DtFuhXr8SEYZ8T2TK2XhB98uKfQgjeSY/lRxtcKcdeI9t2hHYUpNhFEITzIo1N4jviruGicSowWxhkw4WpSVrkfxHKUo5fCDT0nOIR9aZUX56m7wVxo72Xmld2bqRcn8rmU6dq1lPE0f1CbP/3NC7NgZ3/GaH88D1mrg/cu+P5I5Ljb9uMyILvNd0D+O+iagnapVBFxFrx5uAlTMuTSB/6ZJQAaKN9MV58iuzbzOc/JsvnAPukphptr8wEhENTxDqPb99VCVvDWAp8tJd6dI8CJbL76LAVmpVoPFetoNoRgTtKZmPZ+4bgMIn5GoObh6pljJ1ooqZfkBpcbv+SvevA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Eu9i7ZnxbZ5Zc+ExDaZB8QLwentFF5+vwn+dTPi8oRI=; b=FYdYnDg/cI8rmLQxqITX8WQvTnHDs7oclPIX/Efu9rnnpiFNO4YuhMBQjH8m4KML30jXRTWX+tPRWYayp5AHmDE/M2jH0I5h9/VZK+ZyOTcOVCkQ4Mm3+QcZxNUGGnDkatZMo4bzUAt/X2oSjolEecMSF8cQiw/jl5P36JJl71M= Received: from PAWPR08MB8982.eurprd08.prod.outlook.com (2603:10a6:102:33f::20) by DB9PR08MB7865.eurprd08.prod.outlook.com (2603:10a6:10:39c::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6086.24; Wed, 15 Feb 2023 18:34:00 +0000 Received: from PAWPR08MB8982.eurprd08.prod.outlook.com ([fe80::dc17:8fa2:cce5:3573]) by PAWPR08MB8982.eurprd08.prod.outlook.com ([fe80::dc17:8fa2:cce5:3573%6]) with mapi id 15.20.6086.026; Wed, 15 Feb 2023 18:34:00 +0000 From: Wilco Dijkstra To: Adhemerval Zanella , "libc-alpha@sourceware.org" Subject: Re: [PATCH 5/7] iconv: Remove _STRING_ARCH_unaligned usage for get/set macros Thread-Topic: [PATCH 5/7] iconv: Remove _STRING_ARCH_unaligned usage for get/set macros Thread-Index: AQHZP7LyivpOwbrDt0CnXvm1R1BKYa7QVvUD Date: Wed, 15 Feb 2023 18:34:00 +0000 Message-ID: References: <20230213135558.3328727-1-adhemerval.zanella@linaro.org> <20230213135558.3328727-6-adhemerval.zanella@linaro.org> In-Reply-To: <20230213135558.3328727-6-adhemerval.zanella@linaro.org> Accept-Language: en-GB, en-US Content-Language: en-GB X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: PAWPR08MB8982:EE_|DB9PR08MB7865:EE_|AM7EUR03FT056:EE_|DU0PR08MB7662:EE_ X-MS-Office365-Filtering-Correlation-Id: 2d16886e-3261-4076-12df-08db0f833a7b x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: UoNw0egm+vjfd64DXF67WrMT9iYOMfoAbRo1fKTcOIBcF/jewuG/SJY5NmQvQmbck/7tb1oLJhlpU6o/bsxO0xPtjY1Yz9Kc1i6ccgGTC+9hqjGQ7QJWiosVPnou4csyuszbaEH6uJE2A5UCLsyKsdkB5sMDhrDQ2caJX7pPbQaEiGhkmt/kWbiSrmxlJqsHGry0klNwrHl7G7ENcLqzsm9MbKtI8DCoc9gGAtc20HpJRxv0kwTantx1C/3WjQnp+ty9qXLGe6oL/NwFC8Laobqvdlj6MA0/ESCva3tWr/yukUCQNKiDSQv2xPZ/dXODBXu+QMoxHyMXV29YSlA0et5VeYZq6fy+ossGqNyz2pFK9Vvo7eiYFO7Vfva5LlSdsU27UFO4ETa77iUiCwn5x/eYOGZkFJ+W55o7pEsyE3yQ8uJswsMAMh4EocqhpxVb09qS70p8mNVZTymDrqZx3JHVodXeDIQ1Yg0R0xiopmCiWEhKYXc4eXJzSt7Oeh43K9UTVUe98JKNPZ7D+0llKG97KX6ER5HjpwyaPhPxH8Cgj5MMKtAJOan74ZqHsj5AJ3c4D4JIGuz033Lh3UHjB7GkSFgz1KK9WuWh+w7SVzLdex38os80cfUF9ZlmHMJEuCO3yleiHktBgXbZbvLER6DO9sG12ynF/p2d//azgf97HOan77C+IC1vYzrfJ8mdDJPl5iTVumrWTIamLxVJlA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAWPR08MB8982.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(4636009)(39860400002)(376002)(136003)(366004)(346002)(396003)(451199018)(110136005)(66476007)(316002)(64756008)(66946007)(76116006)(66446008)(66556008)(83380400001)(91956017)(122000001)(8676002)(30864003)(86362001)(5660300002)(2906002)(33656002)(55016003)(41300700001)(38070700005)(38100700002)(8936002)(52536014)(71200400001)(478600001)(7696005)(186003)(26005)(9686003)(6506007)(579004);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7865 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT056.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: bacab3d3-898c-424c-fe92-08db0f8334af X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: sdDpMEl1/LDXY0UQW3kK/rVP4CwmWpLKGIvLuz28J5bQXEb2hZBVj8RXAAzDtra8MXYJnDor3fmGdcS+WSeIwjcnZReecO+absG6worZ3WovJZ8kim6qpo2JHq4kqaGo+fmjQ6BNU7E8UdyoppTIttaMr3LpQ7eXp9fO/DLYnSTifM/MXvPavcs9c3hCk1EaN3Yen0g+1OC/7/3f8VfGvWMjF3ChJz9sNWQQkyMqofDqE+P8Cm8wYCLlkruBHCyrusa4U3V9R/GyH6iC984xQOjvY+5tBX9miiQQnLn0YYIbE6QA6X5DzQj0VMRcaQPXcZKuNrltyE8quwleMjXfZvDkmYQyIpy12tFSKx7I80WryqbvqAJ+E0U3ONcrOLn+7ZtxS2GSrqMXoGFh38SewoVeeT7cxNkghOBAn/VqVKF9dhI0hjY2N4rZStBxVEq3eS4UlOiueaEEcF8BqSEe/1UsXZVXLbzReEsBge3uHMbzu/dnu/cUXUuePmGju3glKXpQbPnQz9NBf3qkuJiE1qEWK3Fy4//1SAUFGltsU0W1hFIP3kW9l636h4X31+hPFOXqZZ0kd/q5RL3mGPyvtteplkvNxBvXBI2Rw1nrklhFHuPtZr/T/4TQcVar9dcO3xIvQTgvmgfFTa5ChEObwWsocWr2SjmvFAebODQAso5L/eV899Blyw65jkKaX6KtV9T2/JzfVE3x5O9FQNIJOg== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230025)(4636009)(136003)(346002)(396003)(39860400002)(376002)(451199018)(40470700004)(36840700001)(46966006)(33656002)(356005)(86362001)(82740400003)(36860700001)(81166007)(83380400001)(47076005)(336012)(9686003)(6506007)(478600001)(186003)(26005)(7696005)(70206006)(30864003)(316002)(70586007)(5660300002)(2906002)(110136005)(8676002)(41300700001)(82310400005)(40480700001)(55016003)(8936002)(52536014)(40460700003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Feb 2023 18:34:09.8396 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2d16886e-3261-4076-12df-08db0f833a7b X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT056.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7662 X-Spam-Status: No, score=-9.5 required=5.0 tests=BAYES_00,BODY_8BITS,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,GIT_PATCH_0,KAM_DMARC_NONE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE,TXREP,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hi Adhemerval,=0A= =0A= LGTM.=0A= =0A= Reviewed-by: Wilco Dijkstra =0A= =0A= =0A= diff --git a/iconv/gconv_int.h b/iconv/gconv_int.h=0A= index da792a95f5..4b247a815f 100644=0A= --- a/iconv/gconv_int.h=0A= +++ b/iconv/gconv_int.h=0A= @@ -26,6 +26,34 @@=0A= =A0=0A= =A0__BEGIN_DECLS=0A= =A0=0A= +/* We have to provide support for machines which are not able to handled= =0A= +=A0=A0 unaligned memory accesses.=A0 Some of the character encodings have= =0A= +=A0=A0 representations with a fixed width of 2 or 4 bytes.=A0 */=0A= +#define get16(addr)=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +({=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +=A0 const struct { uint16_t r; } __attribute__ ((__packed__)) *__ptr=A0=A0= =A0=A0 \=0A= +=A0=A0=A0 =3D (__typeof(__ptr))(addr);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= +=A0 __ptr->r;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +})=0A= +#define get32(addr)=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +({=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +=A0 const struct { uint32_t r; } __attribute__ ((__packed__)) *__ptr=A0=A0= =A0=A0 \=0A= +=A0=A0=A0 =3D (__typeof(__ptr))(addr);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= +=A0 __ptr->r;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +})=0A= +=0A= +#define put16(addr, val)=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0 \=0A= +do {=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0 struct { uint16_t r; } __attribute__ ((__packed__)) *__ptr=A0=A0=A0= =A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0=A0 =3D (__typeof(__ptr))(addr);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= +=A0=A0 __ptr->r =3D val;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +} while (0)=0A= +#define put32(addr, val)=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0 \=0A= +do {=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0 struct { uint32_t r; } __attribute__ ((__packed__)) *__ptr=A0=A0=A0= =A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0=A0 =3D (__typeof(__ptr))(addr);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= +=A0=A0 __ptr->r =3D val;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +} while (0)=0A= =A0=0A= =A0/* Structure for alias definition.=A0 Simply two strings.=A0 */=0A= =A0struct gconv_alias=0A= =0A= OK=0A= =0A= diff --git a/iconv/loop.c b/iconv/loop.c=0A= index 963c59ca9a..9d8a7cceb3 100644=0A= --- a/iconv/loop.c=0A= +++ b/iconv/loop.c=0A= @@ -57,75 +57,10 @@=0A= =A0#include =0A= =A0#include =0A= =A0=0A= -/* We have to provide support for machines which are not able to handled= =0A= -=A0=A0 unaligned memory accesses.=A0 Some of the character encodings have= =0A= -=A0=A0 representations with a fixed width of 2 or 4 bytes.=A0 But if we ca= nnot=0A= -=A0=A0 access unaligned memory we still have to read byte-wise.=A0 */=0A= =A0#undef FCTNAME2=0A= =A0#if _STRING_ARCH_unaligned || !defined DEFINE_UNALIGNED=0A= -/* We can handle unaligned memory access.=A0 */=0A= -# define get16(addr) *((const uint16_t *) (addr))=0A= -# define get32(addr) *((const uint32_t *) (addr))=0A= -=0A= -/* We need no special support for writing values either.=A0 */=0A= -# define put16(addr, val) *((uint16_t *) (addr)) =3D (val)=0A= -# define put32(addr, val) *((uint32_t *) (addr)) =3D (val)=0A= -=0A= =A0# define FCTNAME2(name) name=0A= =A0#else=0A= -/* Distinguish between big endian and little endian.=A0 */=0A= -# if __BYTE_ORDER =3D=3D __LITTLE_ENDIAN=0A= -#=A0 define get16(addr) \=0A= -=A0=A0=A0=A0 (((const unsigned char *) (addr))[1] << 8=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \= =0A= -=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[0])=0A= -#=A0 define get32(addr) \=0A= -=A0=A0=A0=A0 (((((const unsigned char *) (addr))[3] << 8=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[2]) << 8=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[1]) << 8=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[0])=0A= -=0A= -#=A0 define put16(addr, val) \=0A= -=A0=A0=A0=A0 ({ uint16_t __val =3D (val);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[0] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[1] =3D __val >> 8;=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 (void) 0; })=0A= -#=A0 define put32(addr, val) \=0A= -=A0=A0=A0=A0 ({ uint32_t __val =3D (val);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[0] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 __val >>=3D 8;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[1] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 __val >>=3D 8;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[2] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 __val >>=3D 8;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[3] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 (void) 0; })=0A= -# else=0A= -#=A0 define get16(addr) \=0A= -=A0=A0=A0=A0 (((const unsigned char *) (addr))[0] << 8=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \= =0A= -=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[1])=0A= -#=A0 define get32(addr) \=0A= -=A0=A0=A0=A0 (((((const unsigned char *) (addr))[0] << 8=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[1]) << 8=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[2]) << 8=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[3])=0A= -=0A= -#=A0 define put16(addr, val) \=0A= -=A0=A0=A0=A0 ({ uint16_t __val =3D (val);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[1] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[0] =3D __val >> 8;=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 (void) 0; })=0A= -#=A0 define put32(addr, val) \=0A= -=A0=A0=A0=A0 ({ uint32_t __val =3D (val);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[3] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 __val >>=3D 8;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[2] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 __val >>=3D 8;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[1] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 __val >>=3D 8;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[0] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 (void) 0; })=0A= -# endif=0A= -=0A= =A0# define FCTNAME2(name) name##_unaligned=0A= =A0#endif=0A= =A0#define FCTNAME(name) FCTNAME2(name)=0A= @@ -349,10 +284,6 @@ FCTNAME (LOOPFCT) (struct __gconv_step *step,=0A= =A0#if !defined DEFINE_UNALIGNED && !_STRING_ARCH_unaligned \=0A= =A0=A0=A0=A0 && MIN_NEEDED_INPUT !=3D 1 && MAX_NEEDED_INPUT % MIN_NEEDED_IN= PUT =3D=3D 0 \=0A= =A0=A0=A0=A0 && MIN_NEEDED_OUTPUT !=3D 1 && MAX_NEEDED_OUTPUT % MIN_NEEDED_= OUTPUT =3D=3D 0=0A= -# undef get16=0A= -# undef get32=0A= -# undef put16=0A= -# undef put32=0A= =A0# undef unaligned=0A= =A0=0A= =A0# define DEFINE_UNALIGNED=0A= @@ -540,8 +471,4 @@ gconv_btowc (struct __gconv_step *step, unsigned char c= )=0A= =A0#undef LOOP_NEED_STATE=0A= =A0#undef LOOP_NEED_FLAGS=0A= =A0#undef LOOP_NEED_DATA=0A= -#undef get16=0A= -#undef get32=0A= -#undef put16=0A= -#undef put32=0A= =A0#undef unaligned=0A= =0A= OK=0A= =0A= diff --git a/iconv/skeleton.c b/iconv/skeleton.c=0A= index 673b474134..9423d3fc5a 100644=0A= --- a/iconv/skeleton.c=0A= +++ b/iconv/skeleton.c=0A= @@ -204,73 +204,6 @@=0A= =A0#endif=0A= =A0=0A= =A0=0A= -/* Define macros which can access unaligned buffers.=A0 These macros are= =0A= -=A0=A0 supposed to be used only in code outside the inner loops.=A0 For th= e inner=0A= -=A0=A0 loops we have other definitions which allow optimized access.=A0 */= =0A= -#if _STRING_ARCH_unaligned=0A= -/* We can handle unaligned memory access.=A0 */=0A= -# define get16u(addr) *((const uint16_t *) (addr))=0A= -# define get32u(addr) *((const uint32_t *) (addr))=0A= -=0A= -/* We need no special support for writing values either.=A0 */=0A= -# define put16u(addr, val) *((uint16_t *) (addr)) =3D (val)=0A= -# define put32u(addr, val) *((uint32_t *) (addr)) =3D (val)=0A= -#else=0A= -/* Distinguish between big endian and little endian.=A0 */=0A= -# if __BYTE_ORDER =3D=3D __LITTLE_ENDIAN=0A= -#=A0 define get16u(addr) \=0A= -=A0=A0=A0=A0 (((const unsigned char *) (addr))[1] << 8=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \= =0A= -=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[0])=0A= -#=A0 define get32u(addr) \=0A= -=A0=A0=A0=A0 (((((const unsigned char *) (addr))[3] << 8=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[2]) << 8=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[1]) << 8=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[0])=0A= -=0A= -#=A0 define put16u(addr, val) \=0A= -=A0=A0=A0=A0 ({ uint16_t __val =3D (val);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[0] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[1] =3D __val >> 8;=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 (void) 0; })=0A= -#=A0 define put32u(addr, val) \=0A= -=A0=A0=A0=A0 ({ uint32_t __val =3D (val);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[0] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 __val >>=3D 8;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[1] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 __val >>=3D 8;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[2] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 __val >>=3D 8;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[3] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 (void) 0; })=0A= -# else=0A= -#=A0 define get16u(addr) \=0A= -=A0=A0=A0=A0 (((const unsigned char *) (addr))[0] << 8=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \= =0A= -=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[1])=0A= -#=A0 define get32u(addr) \=0A= -=A0=A0=A0=A0 (((((const unsigned char *) (addr))[0] << 8=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[1]) << 8=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[2]) << 8=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0 | ((const unsigned char *) (addr))[3])=0A= -=0A= -#=A0 define put16u(addr, val) \=0A= -=A0=A0=A0=A0 ({ uint16_t __val =3D (val);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[1] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[0] =3D __val >> 8;=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 (void) 0; })=0A= -#=A0 define put32u(addr, val) \=0A= -=A0=A0=A0=A0 ({ uint32_t __val =3D (val);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[3] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 __val >>=3D 8;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[2] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 __val >>=3D 8;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[1] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 __val >>=3D 8;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0 ((unsigned char *) (addr))[0] =3D __val;=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= -=A0=A0=A0=A0=A0=A0 (void) 0; })=0A= -# endif=0A= -#endif=0A= -=0A= -=0A= =A0/* For conversions from a fixed width character set to another fixed wid= th=0A= =A0=A0=A0 character set we can define RESET_INPUT_BUFFER in a very fast way= .=A0 */=0A= =A0#if !defined RESET_INPUT_BUFFER && !defined SAVE_RESET_STATE=0A= =0A= OK=0A= =0A= diff --git a/iconvdata/iso-2022-jp-3.c b/iconvdata/iso-2022-jp-3.c=0A= index 4a4d5a3046..d341a14f51 100644=0A= --- a/iconvdata/iso-2022-jp-3.c=0A= +++ b/iconvdata/iso-2022-jp-3.c=0A= @@ -91,7 +91,7 @@ enum=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 if (__glibc_likely (outbuf + 4 <= =3D outend))=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 {=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 /* Write out the las= t character.=A0 */=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 put32u (outbuf, ch);=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 put32 (outbuf, ch);=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 outbuf +=3D 4;=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 data->__statep->__co= unt &=3D 7;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 data->__statep->__co= unt |=3D ASCII_set;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0 \=0A= =0A= OK=0A= =0A= diff --git a/iconvdata/unicode.c b/iconvdata/unicode.c=0A= index 2d131270b9..cc7999e36c 100644=0A= --- a/iconvdata/unicode.c=0A= +++ b/iconvdata/unicode.c=0A= @@ -51,10 +51,10 @@=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 return (inptr =3D=3D inend=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 ? __GCONV_EMPT= Y_INPUT : __GCONV_INCOMPLETE_INPUT);=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0=A0=A0 if (get16u (inptr) =3D=3D BOM)=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0=A0=A0=A0=A0=A0=A0 if (get16 (inptr) =3D=3D BOM)=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 /* Simply ignore the BOM character.=A0= */=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 *inptrp =3D inptr +=3D 2;=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0=A0=A0 else if (get16u (inptr) =3D=3D BOM_OE)=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0=A0=A0=A0=A0=A0=A0 else if (get16 (inptr) =3D=3D BOM_OE)=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 {=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 data->__flags |=3D __GCONV_SWAP;= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 *inptrp =3D inptr +=3D 2;=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= @@ -67,7 +67,7 @@=0A= =A0=A0=A0=A0=A0=A0 if (__glibc_unlikely (outbuf + 2 > outend))=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0 return __GCONV_FULL_OUTPUT;=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0 put16u (outbuf, BOM);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0=A0=A0=A0 put16 (outbuf, BOM);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0 outbuf +=3D 2;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0 }=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= =A0=A0 swap =3D data->__flags & __GCONV_SWAP;=0A= diff --git a/iconvdata/utf-16.c b/iconvdata/utf-16.c=0A= index ad7dfa1a5c..edd1816c9d 100644=0A= --- a/iconvdata/utf-16.c=0A= +++ b/iconvdata/utf-16.c=0A= @@ -55,10 +55,10 @@=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 return (inptr =3D=3D inend= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 ? = __GCONV_EMPTY_INPUT : __GCONV_INCOMPLETE_INPUT);=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 if (get16u (inptr) =3D=3D BOM)=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 if (get16 (inptr) =3D=3D BOM)=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 /* Simply ignore the BOM c= haracter.=A0 */=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 *inptrp =3D inptr +=3D 2;= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 else if (get16u (inptr) =3D=3D BOM_OE= )=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 else if (get16 (inptr) =3D=3D BOM_OE)= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 {=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 data->__flags |=3D _= _GCONV_SWAP;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 *inptrp =3D inptr += =3D 2;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= @@ -70,7 +70,7 @@=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 if (__glibc_unlikely (outbuf + 2= > outend))=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 = \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 return __GCONV_FULL_OUTPUT= ;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 put16u (outbuf, BOM);=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 put16 (outbuf, BOM);=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 outbuf +=3D 2;=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 }=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0 }=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0 \=0A= diff --git a/iconvdata/utf-32.c b/iconvdata/utf-32.c=0A= index 01b6d95018..41be52bb3a 100644=0A= --- a/iconvdata/utf-32.c=0A= +++ b/iconvdata/utf-32.c=0A= @@ -52,10 +52,10 @@=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 return (inptr =3D=3D inend=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 ? __GCONV_EMPT= Y_INPUT : __GCONV_INCOMPLETE_INPUT);=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0=A0=A0 if (get32u (inptr) =3D=3D BOM)=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0=A0=A0=A0=A0=A0=A0 if (get32 (inptr) =3D=3D BOM)=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 /* Simply ignore the BOM character.=A0= */=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 *inptrp =3D inptr +=3D 4;=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0=A0=A0 else if (get32u (inptr) =3D=3D BOM_OE)=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0=A0=A0=A0=A0=A0=A0 else if (get32 (inptr) =3D=3D BOM_OE)=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 {=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 data->__flags |=3D __GCONV_SWAP;= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 *inptrp =3D inptr +=3D 4;=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= @@ -69,7 +69,7 @@=0A= =A0=A0=A0=A0=A0=A0 if (__glibc_unlikely (outbuf + 4 > outend))=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0 return __GCONV_FULL_OUTPUT;=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0 put32u (outbuf, BOM);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0=A0=A0=A0 put32 (outbuf, BOM);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0 outbuf +=3D 4;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0 }=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 \=0A= =A0=A0 else if (__builtin_expect (data->__invocation_counter =3D=3D 0, 0)= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =0A= OK=0A= =0A= diff --git a/sysdeps/s390/utf16-utf32-z9.c b/sysdeps/s390/utf16-utf32-z9.c= =0A= index d87eac0bdf..36c56ccbf7 100644=0A= --- a/sysdeps/s390/utf16-utf32-z9.c=0A= +++ b/sysdeps/s390/utf16-utf32-z9.c=0A= @@ -171,7 +171,7 @@ gconv_end (struct __gconv_step *data)=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 if (__glibc_unlikely (outbuf + 2 > outend))= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 return __GCONV_FULL_OUTPUT;=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0=A0=A0 put16u (outbuf, BOM_UTF16);=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= +=A0=A0=A0=A0=A0=A0=A0=A0 put16 (outbuf, BOM_UTF16);=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 outbuf +=3D 2;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0 }=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0 else=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= @@ -180,7 +180,7 @@ gconv_end (struct __gconv_step *data)=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 if (__glibc_unlikely (outbuf + 4 > outend))= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 return __GCONV_FULL_OUTPUT;=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0=A0=A0=A0 put32u (outbuf, BOM_UTF32);=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= +=A0=A0=A0=A0=A0=A0=A0=A0 put32 (outbuf, BOM_UTF32);=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 outbuf +=3D 4;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0 }=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0 }=0A= diff --git a/sysdeps/s390/utf8-utf16-z9.c b/sysdeps/s390/utf8-utf16-z9.c=0A= index 4d5510335e..33f7c64da4 100644=0A= --- a/sysdeps/s390/utf8-utf16-z9.c=0A= +++ b/sysdeps/s390/utf8-utf16-z9.c=0A= @@ -211,7 +211,7 @@ gconv_end (struct __gconv_step *data)=0A= =A0=A0=A0=A0=A0=A0 if (__glibc_unlikely (outbuf + 2 > outend))=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0 return __GCONV_FULL_OUTPUT;=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0 put16u (outbuf, BOM_UTF16);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0 \=0A= +=A0=A0=A0=A0=A0 put16 (outbuf, BOM_UTF16);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0 outbuf +=3D 2;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0 }=0A= =A0=0A= diff --git a/sysdeps/s390/utf8-utf32-z9.c b/sysdeps/s390/utf8-utf32-z9.c=0A= index c3a431d0a9..55321c519a 100644=0A= --- a/sysdeps/s390/utf8-utf32-z9.c=0A= +++ b/sysdeps/s390/utf8-utf32-z9.c=0A= @@ -211,7 +211,7 @@ gconv_end (struct __gconv_step *data)=0A= =A0=A0=A0=A0=A0=A0 if (__glibc_unlikely (outbuf + 4 > outend))=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0 return __GCONV_FULL_OUTPUT;=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= -=A0=A0=A0=A0=A0 put32u (outbuf, BOM);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0 \=0A= +=A0=A0=A0=A0=A0 put32 (outbuf, BOM);=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0=A0=A0 outbuf +=3D 4;=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 \=0A= =A0=A0=A0=A0 }=0A= =A0=0A= OK=0A=