{"id":2223095,"url":"http://patchwork.ozlabs.org/api/patches/2223095/?format=json","web_url":"http://patchwork.ozlabs.org/project/gcc/patch/20260414124105.178141-3-claudiu.zissulescu-ianculescu@oracle.com/","project":{"id":17,"url":"http://patchwork.ozlabs.org/api/projects/17/?format=json","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,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260414124105.178141-3-claudiu.zissulescu-ianculescu@oracle.com>","list_archive_url":null,"date":"2026-04-14T12:41:05","name":"[2/2] aarch64/mte: Implement MD_CLEAN_MEMTAG_RANGE hook","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"113067c241e9b445a1cccb10d9aabe4fe634690d","submitter":{"id":90509,"url":"http://patchwork.ozlabs.org/api/people/90509/?format=json","name":"Claudiu Zissulescu","email":"claudiu.zissulescu-ianculescu@oracle.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/gcc/patch/20260414124105.178141-3-claudiu.zissulescu-ianculescu@oracle.com/mbox/","series":[{"id":499832,"url":"http://patchwork.ozlabs.org/api/series/499832/?format=json","web_url":"http://patchwork.ozlabs.org/project/gcc/list/?series=499832","date":"2026-04-14T12:41:04","name":"Add bits for handling memory tags when using MTE instructions","version":1,"mbox":"http://patchwork.ozlabs.org/series/499832/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2223095/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2223095/checks/","tags":{},"related":[],"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=oracle.com header.i=@oracle.com header.a=rsa-sha256\n header.s=corp-2025-04-25 header.b=aB5vq5Nx;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com\n header.a=rsa-sha256 header.s=selector2-oracle-onmicrosoft-com\n header.b=aP0GFYyy;\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=oracle.com header.i=@oracle.com header.a=rsa-sha256\n header.s=corp-2025-04-25 header.b=aB5vq5Nx;\n\tdkim=pass (1024-bit key,\n unprotected) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com\n header.a=rsa-sha256 header.s=selector2-oracle-onmicrosoft-com\n header.b=aP0GFYyy","sourceware.org;\n dmarc=pass (p=reject dis=none) header.from=oracle.com","sourceware.org; spf=pass smtp.mailfrom=oracle.com","server2.sourceware.org;\n arc=pass smtp.remote-ip=205.220.177.32"],"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 4fw3nk4fZBz1xtJ\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 14 Apr 2026 22:42:18 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id CB8524BA23D2\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 14 Apr 2026 12:42:16 +0000 (GMT)","from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com\n [205.220.177.32])\n by sourceware.org (Postfix) with ESMTPS id 30F544BA23CE\n for <gcc-patches@gcc.gnu.org>; Tue, 14 Apr 2026 12:41:26 +0000 (GMT)","from pps.filterd (m0246632.ppops.net [127.0.0.1])\n by mx0b-00069f02.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 63E9fMdx1404684; Tue, 14 Apr 2026 12:41:24 GMT","from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com\n (iadpaimrmta01.appoci.oracle.com [130.35.100.223])\n by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4dh8682dbu-1\n (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);\n Tue, 14 Apr 2026 12:41:23 +0000 (GMT)","from pps.filterd\n (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1])\n by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.7/8.18.1.7)\n with ESMTP id 63ECdTsx005858; Tue, 14 Apr 2026 12:41:23 GMT","from cy7pr03cu001.outbound.protection.outlook.com\n (mail-westcentralusazon11010037.outbound.protection.outlook.com\n [40.93.198.37])\n by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id\n 4dh7nmd3uw-1\n (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);\n Tue, 14 Apr 2026 12:41:22 +0000 (GMT)","from CY5PR10MB6011.namprd10.prod.outlook.com (2603:10b6:930:28::16)\n by DS0PR10MB6173.namprd10.prod.outlook.com (2603:10b6:8:c3::12) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9769.48; Tue, 14 Apr\n 2026 12:41:18 +0000","from CY5PR10MB6011.namprd10.prod.outlook.com\n ([fe80::c792:6d38:1377:61cc]) by CY5PR10MB6011.namprd10.prod.outlook.com\n ([fe80::c792:6d38:1377:61cc%4]) with mapi id 15.20.9769.046; Tue, 14 Apr 2026\n 12:41:18 +0000"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org CB8524BA23D2","OpenDKIM Filter v2.11.0 sourceware.org 30F544BA23CE"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org 30F544BA23CE","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org 30F544BA23CE","ARC-Seal":["i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1776170486; cv=pass;\n b=owEx4cw80lnuVaiJc2i/rBiRuas03iAtogcRUJTI6oYed4kslAupf7ZCSjjnKQTmotPAHZTA8C68dAiO9usdzKc8dCQJFyT6xaLrP6kx+8s3WLi6P7E14IhBNp86rB3wpqfnRs7iVeq4EICIPBrhW7BNaFtDVzhZYrSjBZutnEU=","i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=gC9H2O/N76Rh0Q+PKaJhcKPn55+wuyb8cWF0mcXlYd/T+igm5vidvURMZRPWed/2plzSzUpwc7aBIFnYDq1Dwhgq2aSDnhzq0IPSYEfC08GsbK6C6hgk8l7YonSB/h3E/gP88rxtwVb1k+4evEzIN4xf67hp5J9qegWvap4ru0eMbDDxdN/B4JMumE+RZBvtXkxsiNYZlxmg1LpE2qVH8iGUUJU0G8J7XPeSp5ACVgGqjcOAf1GJpI2QiRe6AiLasXLsADit/6bfiapdHMwTCplG1JftrrcfrR7A9PsMLh/h3S1SyMWbbSi79VJ8WfGt8gaKstcZ0semyV6xumkC0A=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=sourceware.org; s=key;\n t=1776170486; c=relaxed/simple;\n bh=GVdbsgeCQfMGMqh3UdZeR6v/miKjktJuC+wEadAgzmM=;\n h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID:\n MIME-Version;\n b=Sv0r1Wi7CiHGWShhX91kZnxchOY5+akZizTAXveu4rE6mPLTX8KOGzrZ+dz/tndelpHGoGoZX+sx9nVHVn1Eqb2mYVubLCjxiXZoaM09D+M464mdsvPMOfQJw/tl3q4Gcx9youNZ4knZ2tPgOaEePwfhFWQM2Wro5UFJRWxb118=","i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n 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;\n bh=z60ZPsgy3U1AvDDxeFUsEkCfQ1TGy/b+hFdxvz4mKko=;\n b=khKrDAFVWhOuI/9/6fwpjHg+qwJAkLDKpzXjQiqgG33HHCF0GyYEzm1yQRmw6NyNH2bpZg3yHNU9tQitLCGW+3dYRSuCpfdlqNT6rEcxz3ZJQ5JNkTZzQcPK+9BhEb/fGOGZeAA2xs7Ca9T1/Rm89TY2xD37kYb0qNnQHNo7ep9Vx14VIhWiL45XPApTb7rrY9Sma3IxYri8rfx/uc6lhsVtkWgWzBRGE1GXS6YicsfaZudbeKNfNWmRcF2wCNBWsoXfdLmfJU+CdTuWJi40hi/SzXRBlgJ1aL5mMBr/mB05kXRjlKkT0VsWFsHdqiL6vQTUI4Of+vfWV2KPsMeZng=="],"ARC-Authentication-Results":["i=2; server2.sourceware.org","i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com;\n dkim=pass header.d=oracle.com; arc=none"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc\n :content-transfer-encoding:content-type:date:from:in-reply-to\n :message-id:mime-version:references:subject:to; s=\n corp-2025-04-25; bh=z60ZPsgy3U1AvDDxeFUsEkCfQ1TGy/b+hFdxvz4mKko=; b=\n aB5vq5NxWfKd7BQDAPS+MXa0yAPMVSXwT7HWypw9bjIRyXQ1RiBgr8lIdnnFSsrm\n utHM3hrHXMZSeSlCN/jWdxTVEcNHuikvbe5DRIMFWPZPnyfx7QzHY775DMRrlPgB\n ePB3v8tBE1QgU7e7BE8LQ3piVr49zgHOETQHyJxs2ztQQ+cnayPCcjb90N2zEe92\n Go58mtiOvU5gNdQEHtZjF0QRb1LDztC+ZzMFKmUzcQx1YZ6IGUuW7bMoj3LsVz4S\n 2nAnfEWQWIscpfr5Mu2963i9OPqJ2reiypx4vxlFih9uq6y/vn0URrdHeCVTrIEJ\n J2IlMQbp/YNaAfHoPsIwsg==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=z60ZPsgy3U1AvDDxeFUsEkCfQ1TGy/b+hFdxvz4mKko=;\n b=aP0GFYyyAE0C4AfDE5ZbTmCwe4dYyAZtj5n+QdTDx7Kb0+aqbKbRhf/8lJid/q53z4htY88yndClIqhXhDDISSWQBItxbe4lxps4osj6/eaLDNJuYXfyFmnXWUGV2K2cQsLJwYl3otR/e6UqKcLTBlSpgy/xEexWERaWUCnM3hY="],"From":"claudiu.zissulescu-ianculescu@oracle.com","To":"gcc-patches@gcc.gnu.org","Cc":"claziss@gmail.com, jose.marchesi@oracle.com, elena.zannoni@oracle.com,\n tamar.christina@arm.com, Andre.SimoesDiasVieira@arm.com","Subject":"[PATCH 2/2] aarch64/mte: Implement MD_CLEAN_MEMTAG_RANGE hook","Date":"Tue, 14 Apr 2026 15:41:05 +0300","Message-ID":"<20260414124105.178141-3-claudiu.zissulescu-ianculescu@oracle.com>","X-Mailer":"git-send-email 2.53.0","In-Reply-To":"\n <20260414124105.178141-1-claudiu.zissulescu-ianculescu@oracle.com>","References":"<20260414124105.178141-1-claudiu.zissulescu-ianculescu@oracle.com>","Content-Transfer-Encoding":"8bit","Content-Type":"text/plain","X-ClientProxiedBy":"VI1PR09CA0163.eurprd09.prod.outlook.com\n (2603:10a6:800:120::17) To CY5PR10MB6011.namprd10.prod.outlook.com\n (2603:10b6:930:28::16)","MIME-Version":"1.0","X-MS-PublicTrafficType":"Email","X-MS-TrafficTypeDiagnostic":"CY5PR10MB6011:EE_|DS0PR10MB6173:EE_","X-MS-Office365-Filtering-Correlation-Id":"91cf5803-5160-42e8-1dfe-08de9a231ff2","X-MS-Exchange-SenderADCheck":"1","X-MS-Exchange-AntiSpam-Relay":"0","X-Microsoft-Antispam":"BCL:0;\n ARA:13230040|376014|366016|1800799024|18002099003|22082099003|56012099003;","X-Microsoft-Antispam-Message-Info":"\n nrhH8BvYfhWMWePHLKXwZ4ZgokQBmmvd1I1MnhSf2MwGJu4noEs6amb2LSmn0iLUhPxkMxSqqp+I0qv5crG5KWBWIeb4QDhZFIkMBBfepXouw1pAYPxgmw/d3r2CqWlrY54IfXhivfjmy8bxc9MBo5Nzw0ChYh/H/wnVqkPnjEKTyCBthPlpBiI3WSw9xoJFTcrcdiDllM7rIiYEvUbOiKEN6OKMlNfu2CXY7PpzYUfHC8IRt9CIg8iGj8bMaQXRLpsPsDMItaZ6JeIcwx2MSxIlte/8JLP/hC++wVh6axbiSBeIiXwd3ExC08jshWrOQrFde9l+CGqtcCcSuTuQIBhqgwliDaNMFixAQayhU3WuvP7ty9aqrk/4VgJOJRqMLfX7DdQERRDrWYzNo6FCG75RFsGDDfJ+cBsBSJJpbE/f549nnfqYKkGekk6UIAczTQ3h0r8JEiQjB/YoLyMrg2mEun3w4QOP4Kz2UvLuVn3hKEL7+22NwNup6nyEsE8YPouQc0HCLaSrHAGw7nN1JSAKZv8m3pnhg6l8ltuSR9DQDAUyojc4I0YJU+WWOpdbx9Wse4u2oTlsT4aZM1ldaTKYsUbUrglL2nv4VLHxLVLSoexVwPk4PCJhw6sMuF2iWpUTlflNe1WWqZKCNTyOXraMuTxrXgRbmjpD//SVUSaVWiI74HJda/Ef6wwR4HBGtigljVyP61hzR38RdXtkBulh6IVRDm+vNoV/BdOJIAM=","X-Forefront-Antispam-Report":"CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:CY5PR10MB6011.namprd10.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230040)(376014)(366016)(1800799024)(18002099003)(22082099003)(56012099003);\n DIR:OUT; SFP:1101;","X-MS-Exchange-AntiSpam-MessageData-ChunkCount":"1","X-MS-Exchange-AntiSpam-MessageData-0":"\n sFLvici3vd1+jIcPvQdxNHndB2PQvPoFTmAiiKFqozxblrqSzHiulOBUfus0tRlSalc2xUPfIJVn5GBkyLBOYGJoQ/Oap79eFBgvOWeykSPf3XzmgbEFfASsd3+dAvCVLNq7OaTAlj1g0Hi8g6xF5GcD9yqpxetQGOHW9T9lDeFDy1GP4WCRtKu84V6yxeorhLKV4aTRJ16YMiMi9WAJmUcKXCR8AFgUL1+tiRMF4LUIIPmUUIWeHjLffow0Nrigvq1EEcjg77Xev77IGuU/XKhnZGE2mOoQ0ehhPRytz9K22yiuBbG/8etjwV9ntIllk0kfxiPpqn5vXcNwvQMe7owd76yBDb3HhgnkKiOiQbjLVOVIR51bE73c3ownp35SvHnOXG2t3flpLMMwuYci7t2ThRgIQGsJ+mxKlPsObOyvIZiAVIu0OokS5qkqpYmG/fdcO9eTqRynXd/EXqANAAJEOeNv+ekrWxHheDJ4m7u6g+z7zJEG344uqVmTKdnEZ6D7QLrTelCVtX7gRwEcu7dReZoTq84AVGDPV8mVAMyNsqO4s3+NGtdLWyq8AczKczoMu9O9sxyElZ/0XQgKg+Nmg68JvsMENVYJkFeo1v7W1qylR8eyArDdTs9h5e1KM2Z4cq2enYpTCyGT0c8rgI/fShB6Fz3i+eZWT4lR9j/8TYwkuwuuzfK2f9lF3ba/QOlb6Kr2ks90PSHaJb5sHH/HNEDW1nsLtcIRPxe92cO6ueYILMhF/rsgOngYq4IkBSBw+JzTfGuRUmQyZ+Yu2X2W6N+1mm2nOixX1g0bey4g/38PTQ2cjyY8AtEuncdzVZjcX7vzNzoSgylAk5FejRyh4hCqP25sZxJAF9ltLo0ev8B8YaHnZ2fdtpGEALAv9mqQz2qDsQenaioZhE/5AGSUkva6W86fa7urohdgxP+I1Ru696gWWWIjfwyOXAIH1i4OR31C80q81SkTiIGgI5ce7/rpqNO7jxVm77KfG6K8cSIAaTeSDC5dlUT3Z0yuiJ6a/qEt49gCYGxQh7a9jRpr37c1s+JodWLQTw99thynWvlVnX69siTxJK7bKEmz6pW7iUk+xW+GsHQ7ItqTs+HwI2qMdwZ2aBYG/9Ww4828qePU1x4MxAKhryYgrrFYQIJG6S3xEILLTCL+vxb0QsIvAvdiaNbnr+L79gPj2Ar/1vCB7kx8zIEg8tBhAxgT8jtd3KzmPJXW/9B1N1lOoK9ASDVA2ZhprBP+QuKu2cmRuVDv8SXq8O5sQK+velN3+stDSS04FvuGlpCwqcqSjwLDIDLEDwVNgNi9Iw2r4DadABqnainkxR5wKQuwtYcb3eNwXt+B+IeM8Lnm9WKDHY0fz/gWiAzap8PEZNaXpN8VFLpsa7BOlfbbVyUitUC2jP3qAswfDy8SOcBx/VXuJCrYCJcoR9wH6r5zSi3erd5AZZcb2tGpvL0m6ozoX+2VaSKre3q6dMbtqC43IY2Q1rHIMiPHginxCJpEyfC0d4rBpgq3ht1ip8u6kCybTpTxlGaR9918vvCnyztUPkKsySOjU+E7YtLOD6Na/Uw6KdO6vWWdImGum1Ulyo6tcr32gERWNqDMTwqfho+wVYvg028i+zeSpq+i7nRrre1htKZ9V18UCitm3vDQRYvFx6ySZSzU4diJC6KojJwZIeVx5xVe7aM837cBIAG8DXHYP/llny7LA7ldvO4ozmxPzTrrMFu328sfKQHrSkUCRRCHsIabwNBdgDQ8sjBUMqkiN80vVRkJ7GKLMVSonpDBOA6U","X-Exchange-RoutingPolicyChecked":"\n Ye/rvSNkll2t5k2rT+BbwpUWUM/UFJzADwaQKICohGm7pEv8qwjTt0lLMhNcPyg1vG1mTphhDgLwtBGRKEcIJdFuTt9uyz66w8w2gKv1JPI2NufuQ7uUvcr4eLwr+f3U1SBipFz5wN457gg32NR6d8cF3XeLBN97Y3gxBTWtyucRirYD/+05Z8EEh3OwXvIzWOaUNNerruwuGMWbw5bgXh3Gal5bmACj1CjbpzzmsrNdCMil1flWSuyszPnBpk2/+8yvI0Vfeymb+rHgDjPnMF+ds7nVRvB5/Jo3zE5s2KHnlcJu3Y91cBSz+uuhVDzHVqE875OSHZppcrdzCG1U8A==","X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount":"1","X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0":"\n SBvNnI7aa/YPYMoyo7po8dHOrIOllvEFKoQqLxwAlF2irkO5cuh7oQcSbfDJiQPBVmDGlxfcqj0//3jHuPFXwlbmaU/P+NEj6ReRPKOIv8qaT3ELYtv4kcYTv7rtcFbN53OwsmpZdlFRO8xDzyd5eBsGjqZ1cHNIxewQtwM2fLTgHEx5wG9jQlpi66sxBVqmZcDucHXT4rRP/5dQ+veUhKx/e+xNf+B3CtYC+BclGwaDXJXjD4pdd9aRIsZ2ePb1gO6QGgk25ypPal+8BRZSzO4LDOWy2fU+23WZQ0EpFQ7gZerxB37nTcliiTxFKEjwQd77ToXFntKmfxHKoPthG2yAmYMfZFqDS94tnSOgHrc7RONBG+hPjTBUP//loBiXMYbqPXBOw8yV7bFzczWhqc4zoBT7yN3IOOFskcgOCt9UBgt8kJ1xfSjDEmQlB6Icfhj1bhA8XrDWvrCQJ29pOw8LuHeePDSyEGe8MdBp1BhkhOvdFY7ilK+KijG8ldWZN9kVi8T2C+zizbHjS/Kqq+na/+D/Yru2tfvobYMLuQBQ6omqtlCErmHtMpSAiYxjiIZsnN+0T/FZpjNV9t3ea8KO+5wDv7Cb10ig8KA2MBU=","X-OriginatorOrg":"oracle.com","X-MS-Exchange-CrossTenant-Network-Message-Id":"\n 91cf5803-5160-42e8-1dfe-08de9a231ff2","X-MS-Exchange-CrossTenant-AuthSource":"CY5PR10MB6011.namprd10.prod.outlook.com","X-MS-Exchange-CrossTenant-AuthAs":"Internal","X-MS-Exchange-CrossTenant-OriginalArrivalTime":"14 Apr 2026 12:41:18.5290 (UTC)","X-MS-Exchange-CrossTenant-FromEntityHeader":"Hosted","X-MS-Exchange-CrossTenant-Id":"4e2c6054-71cb-48f1-bd6c-3a9705aca71b","X-MS-Exchange-CrossTenant-MailboxType":"HOSTED","X-MS-Exchange-CrossTenant-UserPrincipalName":"\n 5ekH9nIH5rL1W9Evs0v5a1Psf6ABcGeXegYoU7ySqVFzp74S/Kspv54+kWCZL7BRMNUYTuW4sJ5XT2vovbLjeOqzFqalSHpkcFvZWmJTaIsgkv34A3PnFM+rkTCMoMaZvWqnc3+x+vNX6LDWw+IdAA==","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"DS0PR10MB6173","X-Proofpoint-Virus-Version":"vendor=baseguard\n engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49\n definitions=2026-04-14_03,2026-04-13_04,2025-10-01_01","X-Proofpoint-Spam-Details":"rule=notspam policy=default score=0 malwarescore=0\n phishscore=0 lowpriorityscore=0 suspectscore=0\n mlxlogscore=999 bulkscore=0\n mlxscore=0 adultscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx\n scancount=1 engine=8.19.0-2604070000 definitions=main-2604140119","X-Proofpoint-Spam-Details-Enc":"AW1haW4tMjYwNDE0MDExOSBTYWx0ZWRfX94jZOpm0+SvD\n zKbf5y3xaqHiBhPeP2IviSHyiOuyJLDX3YIpc4JcAeASSwlcwvEk/slB0CeVhMovMyy0l6jfbay\n nP1E/7TKxjZHbb1KvRBO3IXkQZatHEys4a12pmZPh1M8a7+Ev4Msnw2JTaC02i2hQBN9HUkSxwT\n b02TvKgXtTEcTcMEmaWwF29QdonFpCFhng5RnqklNwH4rM9CZ9VuvAT0M6bPo+W8+wKOWFOQLnx\n /7gqI4zyhzbuqz/7g1CtEJ6dP3oVWrV6PnpVDozL8SQY4bC80v3Ns2ai2xMJpvn/0MFRSaK36nI\n LbjsixazyRnE8L7cx7jzQiJyIQgLub5r5oLbfvIXt8+SMhFammE6SndKXpFmGistFqjyragf70q\n mkpVrsU85WW4DFEm+Qx1OLug3+F/IJTZpM73gzMC6OzCsk9X6xI86pxhs9NpHL0+x9QMIzl85HS\n mzDk8/Qylst5OhSi4x6n04nJZTpIKEcdVidCxdGk=","X-Proofpoint-GUID":"56VjVV0yZfGoitJnB8ZnZfuaze5ODBbQ","X-Proofpoint-ORIG-GUID":"56VjVV0yZfGoitJnB8ZnZfuaze5ODBbQ","X-Authority-Analysis":"v=2.4 cv=JY6Ma0KV c=1 sm=1 tr=0 ts=69de35f3 b=1 cx=c_pps\n a=zPCbziy225d3KhSqZt3L1A==:117\n a=zPCbziy225d3KhSqZt3L1A==:17\n a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19\n a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=A5OVakUREuEA:10\n a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=jiCTI4zE5U7BLdzWsZGv:22\n a=3I1J8UUJPc9JN9BFgKH3:22 a=yPCof4ZbAAAA:8 a=urj103uPPKj4aODTR_0A:9 cc=ntf\n awl=host:12291","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":"From: Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com>\n\nImplement MD_CLEAN_MEMTAG_RANGE hook to clean up any residual memtags\nafter an exception is taken.\n\nThe patch contains the necessary bits to check if the system has MTE\nsupport, if yes, the MD_CLEAN_MEMTAG_RANGE hook is removing the tags\nbetween the two addresses provided. A test is also provided.\n\nSigned-off-by: Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com>\n---\n gcc/testsuite/g++.target/aarch64/try-catch.C | 71 ++++++++++++++++++++\n libgcc/config/aarch64/linux-unwind.h         | 68 +++++++++++++++++++\n 2 files changed, 139 insertions(+)\n create mode 100644 gcc/testsuite/g++.target/aarch64/try-catch.C","diff":"diff --git a/gcc/testsuite/g++.target/aarch64/try-catch.C b/gcc/testsuite/g++.target/aarch64/try-catch.C\nnew file mode 100644\nindex 00000000000..75559c8a2c4\n--- /dev/null\n+++ b/gcc/testsuite/g++.target/aarch64/try-catch.C\n@@ -0,0 +1,71 @@\n+/* { dg-do run } */\n+/* { dg-require-effective-target memtag_exec } */\n+/* { dg-additional-options \"-fsanitize=memtag-stack -march=armv8.5-a+memtag -O2\" } */\n+\n+#include <stdlib.h>\n+#include <signal.h>\n+#include <string.h>\n+\n+extern \"C\"\n+{\n+  static void\n+  optimization_barrier (void *arg)\n+  {\n+    asm volatile(\"\" : : \"r\"(arg) : \"memory\");\n+  }\n+\n+  void handler (int nSig)\n+  {\n+    /* We hit the exception.  Return error.  */\n+    exit (1);\n+  }\n+\n+  static void setHandler (void)\n+  {\n+    signal (SIGSEGV, handler);\n+  }\n+\n+  void __attribute__((noinline))\n+  foo (void)\n+  {\n+    char x[15];\n+    optimization_barrier(x);\n+    throw 15;\n+  }\n+\n+  void __attribute__((noinline))\n+  hwasan_read (char *p, int size)\n+  {\n+    volatile char sink;\n+    for (int i = 0; i < size; ++i)\n+      sink = p[i];\n+  }\n+\n+  void __attribute__((noinline, no_sanitize(\"memtag-stack\")))\n+  after_catch ()\n+  {\n+    char x[10000];\n+    hwasan_read(&x[0], sizeof(x));\n+  }\n+\n+  void __attribute__((noinline))\n+  test_tag (void)\n+  {\n+    try {\n+      foo ();\n+    } catch (...) {\n+      after_catch ();\n+      // If no tag mismatch then we can see this.\n+      return;\n+    }\n+    __builtin_abort ();\n+  }\n+}\n+\n+int\n+main (void)\n+{\n+  setHandler ();\n+  test_tag ();\n+  return 0;\n+}\ndiff --git a/libgcc/config/aarch64/linux-unwind.h b/libgcc/config/aarch64/linux-unwind.h\nindex 8fb782ab996..f34bf29dc3c 100644\n--- a/libgcc/config/aarch64/linux-unwind.h\n+++ b/libgcc/config/aarch64/linux-unwind.h\n@@ -29,6 +29,49 @@\n #include <sys/ucontext.h>\n #include <stdint.h>\n \n+#ifdef __ARM_FEATURE_MEMORY_TAGGING\n+/* Avoid runtime MTE detection if libgcc is built with MTE.  */\n+# define HAVE_MTE_CONST const\n+# define HAVE_MTE_VALUE 1\n+#elif __gnu_linux__\n+/* MTE access detection on Linux.  */\n+# define HAVE_MTE_CONST\n+# define HAVE_MTE_VALUE 0\n+\n+# define AT_HWCAP2\t26\n+# define HWCAP2_MTE\t(1 << 18)\n+# define HAVE_MTE_CTOR  mte_accessible ()\n+unsigned long int __getauxval (unsigned long int);\n+\n+static _Bool\n+mte_accessible (void)\n+{\n+  unsigned long hwcap2 = __getauxval (AT_HWCAP2);\n+  return (hwcap2 & HWCAP2_MTE) != 0;\n+}\n+#else /* !__gnu_linux__  */\n+# define HAVE_MTE_CONST const\n+# define HAVE_MTE_VALUE 0\n+#endif /* __ARM_FEATURE_MEMORY_TAGGING  */\n+\n+static HAVE_MTE_CONST _Bool __aarch64_have_mte = HAVE_MTE_VALUE;\n+\n+#ifdef HAVE_MTE_CTOR\n+/* Use a higher priority to ensure it runs before user constructors\n+   with priority 100. */\n+static void __attribute__((constructor (90)))\n+init_have_mte (void)\n+{\n+  __aarch64_have_mte = HAVE_MTE_CTOR;\n+}\n+#endif\n+\n+#define MEMTAG_GRANULE_SIZE 16\n+#define MEMTAG_GRANULE_BITSIZE 4\n+\n+#pragma GCC aarch64 \"arm_acle.h\"\n+#define MD_CLEAN_MEMTAG_RANGE aarch64_clean_memtag_range\n+\n /* Since insns are always stored LE, on a BE system the opcodes will\n    be loaded byte-reversed.  Therefore, define two sets of opcodes,\n    one for LE and one for BE.  */\n@@ -266,4 +309,29 @@ aarch64_fallback_frame_state (struct _Unwind_Context *context,\n   return _URC_NO_REASON;\n }\n \n+static void __attribute__((target(\"arch=armv8.5-a+memtag\")))\n+aarch64_clean_memtag_range (void *old_cfa,\n+\t\t\t    void *new_cfa)\n+{\n+  volatile unsigned char *sp = (unsigned char *) old_cfa;\n+  size_t size = new_cfa - old_cfa;\n+\n+  /* If the system doesn't have memory tag machinery or it is missing, just\n+     skip this function.  */\n+  if (!__aarch64_have_mte)\n+    return;\n+\n+  /* Sanity check.  */\n+  if (old_cfa > new_cfa)\n+    return;\n+\n+  /* Adjust the size accordingly to the MTE granule and clean all the tags.  */\n+  size >>= MEMTAG_GRANULE_BITSIZE;\n+  for (size_t i = 0; i < size; i++)\n+    {\n+      __arm_mte_set_tag ((volatile void *) sp);\n+      sp += MEMTAG_GRANULE_SIZE;\n+    }\n+}\n+\n #endif\n","prefixes":["2/2"]}