From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 113621 invoked by alias); 26 May 2017 13:31:19 -0000 Mailing-List: contact newlib-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: newlib-owner@sourceware.org Received: (qmail 113594 invoked by uid 89); 26 May 2017 13:31:17 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.7 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy=Hx-spam-relays-external:sk:EUR03-V, H*RU:sk:EUR03-V, HX-HELO:sk:EUR03-V, H*r:sk:EUR03-V X-HELO: EUR03-VE1-obe.outbound.protection.outlook.com Received: from mail-eopbgr50075.outbound.protection.outlook.com (HELO EUR03-VE1-obe.outbound.protection.outlook.com) (40.107.5.75) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 26 May 2017 13:31:16 +0000 Authentication-Results: sourceware.org; dkim=none (message not signed) header.d=none;sourceware.org; dmarc=none action=none header.from=arm.com; Received: from localhost (217.140.96.140) by DB6PR0802MB2454.eurprd08.prod.outlook.com (2603:10a6:4:a0::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1101.14; Fri, 26 May 2017 13:31:16 +0000 Date: Fri, 26 May 2017 13:31:00 -0000 From: Prakhar Bahuguna To: CC: Subject: Memory usage of __global_locale for non-locale functions Message-ID: <20170526133112.mh6nbz2bvn6t2fp5@e107464-lin.cambridge.arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline X-ClientProxiedBy: VI1PR0401CA0016.eurprd04.prod.outlook.com (2603:10a6:800:4a::26) To DB6PR0802MB2454.eurprd08.prod.outlook.com (2603:10a6:4:a0::14) X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DB6PR0802MB2454: X-MS-Office365-Filtering-Correlation-Id: 22860775-4ed9-46fe-9ede-08d4a43b7c8b X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(48565401081)(201703131423075)(201703031133081);SRVR:DB6PR0802MB2454; X-Microsoft-Exchange-Diagnostics: 1;DB6PR0802MB2454;3:E0cUXzhxZ59zexOrK0evAJAUVpwD//9lyeE4cFA0QabO4nZI3CnUvjQ21WVJYq8dw43h44k1SpyZlRGTi/OA0IWf7mwxmpy8uWT58UL4B+RJxdmjj8/6gkJ6n27sg+fMpssATWG0ZhPm8Vw611GHDzMue1c6EW2/6xckoSfUxyBEGqC1JKWHlPldopLPUSGN9tBgZwyiQ2XJYbLKP4EQ2DIpr7MVntREoPGDgm+T9HlVPt5RXUI1CxvqGpqQDivMNfafyNkot4SgdGEHqPl08409Awf9vGpgkofI+z1UgS8NiYVEU9o5iXI9yYXYJaKnOv0DKXWUwfHWymdI3paB9ih6BHGOjl4yhMui2q75Tws=;25:1rfVJE1zoU+YrVw5MWrGBGJZewdWXDiJGeJeQrAs9ILTycqNuk9TK8F/LGcdZX/KF0+ispCkhnHyaxcQPwA7MEqUicBvgEuYbAFWeSD9Ncsv+lKOTB+VP4zL8LdzvgwkpISv+1AB2Fi4fQdLqJVz0Jlhs3nAUFoDCMdNQK2DqxE45dwm5O+MYrUuix1cQk6rEnzIqSShat7Hpm3oCOjOOrirEiR0CBhhghg99YWyRsrmQ97AJWJn64J/3C9rlx3ZKuIgHcCynRz8rux8UGgxoSaAAzKS5ai5ce3QO97rrjX1C3RUNc3Lg4g2vG8xeojWWqiagFH2jGjU8JgE38YS20wV5/pKBO+6iCwlY7bTqkiuYSXQuLmegAJt+G991nQOwlQMa2XtxyFhwFUPj3s62JA5nU6MxtmMNn/HDd8VEf7fXohiDF/8tKMwmCo/haxKx+CrmKWjy/uImy8splaetzhiSUvU9LiHK2rATjciG2o= X-Microsoft-Exchange-Diagnostics: 1;DB6PR0802MB2454;31:+n7uxriMdZL7qvjAeiV8lpjhuC6RUREmLoUFzWorMpRnD2zF7GiLyH7rk3Svwrz8wh5d5CWSrsmdv9lf2TCoYs73t60CGn1c3ConP4vXf6AXS7Xmn4Ywq2erH5HW3nfQ4Hytgbnrs5ndKMZQbmZED0r8+aBD6ME7MmEntjuFG6rM8rDX2kajsFF5W61jHDfzP//q5iieIv6qkNWVdRV8wkKYBIUPZZ+uTBZuMqfoRDw=;20:8qKxBjv/jGYxpeh+TelecAWDfwPKfgO/iodl2zznH0/oXvGn7WNEascMSVRMZxu8h9RWI7XviPBgEbTdXjtyxk+VRi9HO0T5q1v9DsKvealUbpOaw589yl3Cydoaj7yCMoYx9j3eAw+Y++6QZRMSsOOaawJRAYSAkMG13nBhwa4= NoDisclaimer: True X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700061)(100105000095)(100000701061)(100105300095)(100000702061)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(93006095)(93001095)(10201501046)(3002001)(100000703061)(100105400095)(6055026)(6041248)(20161123564025)(20161123562025)(20161123560025)(20161123555025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(100000704061)(100105200095)(100000705061)(100105500095);SRVR:DB6PR0802MB2454;BCL:0;PCL:0;RULEID:(100000800061)(100110000095)(100000801061)(100110300095)(100000802061)(100110100095)(100000803061)(100110400095)(100000804061)(100110200095)(100000805054)(100110500095);SRVR:DB6PR0802MB2454; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjZQUjA4MDJNQjI0NTQ7NDpuTzlyTEV1cGRDbWJncStPYlRnY0NHSUtU?= =?utf-8?B?Ukt5OGE1UDQ4R1VHSS8xbDNxM29mYkk0UEtSd0szcURpd2dTWEMvUmxvTDhH?= =?utf-8?B?Q3AxdUZsWVNJNCswKy9INWY3YkRUZ0xIVWIzSnlUS0tmVkJ4RWRTT2lycmNF?= =?utf-8?B?K0k4d3VYZjVsTkFIMzdRaGxoeXN6anRYbnBGSWhHOGZ0aVVWL1doN1p3SjdY?= =?utf-8?B?eTFkS2NaaG94TW9EM2pIVWd2akQ2TjZYK3VDdU1TLytVZmttaHM2Y3pQZEVm?= =?utf-8?B?bWRtRm9MM1hXUzZnNkMyV2NOSHRHc0VJeEhyWDlPeHMxRGFoa3lWVVZpd2Q5?= =?utf-8?B?MkFaTWZjZElSM3pnUXpGbUhsR09mbmxEV3pLUU8rS1RRUnIzUTNxSGQ0OTU5?= =?utf-8?B?dm9aKzYzNU0zQlRXelJ0c05MYmpBZFN3T3J0VEpwY0J6Q3RvcTF4d09EcjE0?= =?utf-8?B?ejVMSnBhZVVRU2E3SHZMdzZUMHl2WWJwY0MwSEhXS3ZhQ2V6dDE3c3VtZ2Ex?= =?utf-8?B?ZW9oZ0xjYjVGbWg0NGJpaUErYUlZSTd4NzVWeWZkSjFGSUo3Mzl0RHRQd3hn?= =?utf-8?B?aDU4b2lURlEwbDBkKzZacVJMUkVyQWpqVHgzTDQ5N200b0pQK3Y2cFc2bTEw?= =?utf-8?B?UXUxVUIwbjVKWGQwbmE4ZExxaU5sR21OY1pNUGJUVmZkMW80WnJpQk96VGgx?= =?utf-8?B?eDMydko3dW05L0NlajNiek9wMXZrcVBKWElWVm5zOUdkZHdJOXl4dk5VVjNP?= =?utf-8?B?WnJNSkQ3NmZ3Zkk4TWVtb0FwZTlsWnFvTHhXTFFqU3ZjQXBydHJOWnR5MlA4?= =?utf-8?B?eTRycUJjZWQxQ3JoNTNkV2lJYk9pVHNFNGNlOTdnN0ZIcE9uWGF1UEt0Z29N?= =?utf-8?B?S1JUUmo1eHJoZmZoQytHQUk2ZVdpa0xPcndyU1p1emFjb0wzdGQ1SktpazRw?= =?utf-8?B?c0VSeEdOVGdCcjVvb0ZrWlc5YUZuWFFxZ3Q5QWZQUW1TMW5UTDdWbjZIV1NG?= =?utf-8?B?am9Uc0hCMGZvOWRjaHh2T0l6WVlzUzJCSGlUMWp6YkhuR1Z5eUExZXVyKzNP?= =?utf-8?B?cHNXS1ZoRGtQcXpsZVJwbUcwSS8vWDFlcFN2QUpwU3pqR20wZXlLdC9QN1Iw?= =?utf-8?B?blhrdkxnblBjSitwdlluYytiZHRKdmxid0NpeUQ2cWxtenBQdHBHTUNNQ09q?= =?utf-8?B?Sm5XTTVnS0xTZ04vYkt0eG1aMjJmMFFkRHRwVkM1WmRlcUQ4YjF6a0paRkRp?= =?utf-8?B?a1FMQTkrWjg4MlJFeC9QMFY3L2VOWEtmWUIxTGtlaE1haUVMZHNucG1hQTRl?= =?utf-8?B?NjJ0YjMrVXh2ODJRNXliRnJnQ1k2dlFCWk03T0FaVlhPdlJJaVY5NktKOStL?= =?utf-8?B?UHpTdDhSdk04MEIyT1RuOENCdVpld2xNaXFnUi9HZ3BVSDI0SCtmOWdaSm8v?= =?utf-8?B?VWozcTFTM1VHakdnS21jYi8wYWFzcng3cU5uZzRFa1EwRUtEUWo4WlQwZy9U?= =?utf-8?B?Q0Y4QmVrMURhajhQOEl4cUQ0MU5USHVQcEhXci94QXg2TS9LdlUwdXlDa1li?= =?utf-8?B?SkpGTjJMcnpXRGlXYU84dzZVRDhCdy9BPT0=?= X-Forefront-PRVS: 031996B7EF X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6069001)(6009001)(39840400002)(39850400002)(39410400002)(39450400003)(39860400002)(39400400002)(4326008)(23676002)(110136004)(38730400002)(33646002)(81166006)(8676002)(72206003)(1076002)(6116002)(25786009)(50466002)(45080400002)(2351001)(478600001)(2906002)(7736002)(76506005)(47776003)(305945005)(66066001)(86362001)(189998001)(6496005)(42186005)(53936002)(3846002)(6486002)(6666003)(6916009)(5660300001)(54356999)(50986999);DIR:OUT;SFP:1101;SCL:1;SRVR:DB6PR0802MB2454;H:localhost;FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjZQUjA4MDJNQjI0NTQ7MjM6K0xkM0NjTXJpY04xa2RKTjd3ZXdOUTlJ?= =?utf-8?B?eUJkNVF2U25KVFFwVFNucEVldGprajdWMzFIdE9ZZ3kvNGUvcjVmdmtodnpr?= =?utf-8?B?L24ycTFpSWh1aHl3RmlDM3ZMdVpBTEtGUlZ4TmdVZG02RWZERkRVRy9hMFp6?= =?utf-8?B?aENEVStUSzhjL0hTaDR3ZUVSUXNYcmRyeHVJK0hwYWY2ZDE5YmRxZ3phU1gx?= =?utf-8?B?bXZKemUwUEsrVFBqbTVJQ1p3Q0pKcWN1Q0hBdk5nR3AzYSs2ZDIwSC9pdHVM?= =?utf-8?B?aW1zL1JPbSs0bC81ODY0VUN0OVY1VjJEQ3o3YmdyNm1hNTN2b0x0WFk2L3pt?= =?utf-8?B?MzVJck5MVkxQVHZqdUdUaFcwUG1uSDVPYjdud1dFcDRKdVlTeVJYaG00TFE2?= =?utf-8?B?RU84L3dGRCt2L2M0TTZlcUNLWUhBQ1N2ZWRvazBlUG5QOEJEbTdCdkZnSVoy?= =?utf-8?B?cTJqMVlTTTB5a0ZXVmRWN3pPYllXM0RpRzJENzhna083ZXEySEJ4MWUwOEFP?= =?utf-8?B?L1Q3YytVV0JMOHplOVc3eTVXYnNwdFY4VThSVGd0dUg2ekRvSXA1SjhCallE?= =?utf-8?B?RU1HUDV1a1ptTHB6RWNqeG1xRWRWZUhkUjdxa05xZWtKTHQ2b3FsQU9VbHE3?= =?utf-8?B?M0YvVHoyalBQeHlJSnVKOXpya2RTY0EyWDlkSWJaTlJHaTlVVFRESjBvbWZ3?= =?utf-8?B?azh0SnRCVWVhcWxXZTJDMGhXUFhuV2pwYnZZTVJDOHBPaTRrckcrMUZtNXlL?= =?utf-8?B?bGwvZGJQcVJVUUtRUkdvdnRDZSszU1I5cGZvWGFwMmVvY2k5Vm9QcTA5QXRa?= =?utf-8?B?MU13blc0VU03TWRLZmVSclNpd2lvWW1obVVVWjZNMVhLQUtIem8wZWR3ZnNp?= =?utf-8?B?aTc2bTlTTlRJQzFFWWx4RytTdWhxdmZCVnMvQ3RadEZHMEwzSjZON2xVWGVD?= =?utf-8?B?cEdkQ29OU2tUaElUUWJ0eGIybzZCYVFoS1hzajAvRWNPckhNRzVOb29DNmNo?= =?utf-8?B?czJ1RmJyTWI3ck4zTXZDd3ZGc2QwMlBuNEhvRk5UdjR5OHN5K3JyL2hwcjFt?= =?utf-8?B?TDk3ZVprQnpaaVBPaTNZeGJOQWZOL1RvdXpLSEdaQzhIdVM5enVValdKejlm?= =?utf-8?B?bUl0SDV5cE5oU1B3dXRlb2VPM0JuMHoxQU1uNktYN2NPVWlRZFplVzZGaExF?= =?utf-8?B?UzIxeU1VNENoZUJ6YnVSbkV3ZkU3cVQ1WTBjVUxTblRVUzJZYnU1SDhxSFls?= =?utf-8?B?b0QxUTlrOGRpK0FRUGF1TUNFSlNTQVZOTU5TRS8wb3ltWlhPcDlOZm9uNGZw?= =?utf-8?B?b0o0bnpFcVBtczIyeC9senI3S3BYbWJiQXdpaHRtN0lNdXhnQ3cwclBVb3g2?= =?utf-8?B?S2tCVXltYUdMUVk1V1BocVZyS1puK2R0UHJJbDVGeEFYemVuQUpla3poSEE2?= =?utf-8?Q?qwW9OQIA=3D?= X-Microsoft-Exchange-Diagnostics: 1;DB6PR0802MB2454;6:xo6mx1Y/9Qzr8Dfd3WP2VrtIeyrbVbEm1ZT/kU6U8DsR9lVWKZPpddFVfOVKmxv3bvRGAvtXUQjUw8dsmWHFd4VIEyjXCzJ5W+kXEHsUmhI2ddsN4Y4zahzX2G4YU2+Ln+WvEVeZ862LRqr1K1cqGwTDtoP0R5QJ3P2JQax6YXPW3xvMPgc2pzm6WWjZLJZEmA76174tYRl98e9Dx4bxYugeWrKU+jgHTJckfOUWWkKyLYPo1fRD9WpUIJqakJnBXI/Xwjh1LLDkhBS28tAAKz8gN0jlYSjBP3Ft7kPWpu2OnECJDGnVGgYL8mlR90aoJLLtb2fbUmgQ4JWNE7Q9Z9DVMNcKLYqdHF1S5taoqDN/GzTRiz6cjTNSe/C7WrMXYRTajy7TmLB+SlWSsZ2q+CkaxDUnNodCf0DV72yHZI1UfRMZ4Nfc3r4jZQO7lejtNjltS7BqL0Gljgxry8bUHTRnAkrj/HQrYhZYmYY2pBzx9qTDORt9EnjPXdQ7TAsW/LzLOU4UQ2wgphbL9ruTd8uIWUKPxehObXO8mvejAZs= X-Microsoft-Exchange-Diagnostics: 1;DB6PR0802MB2454;5:JAE2qJ8yHTjgZd8BAOIyilzl75A2T+s+b53LNsFQIFV5IchOFDxYegTslGzzL3JOUqdmdOEdMMglMM+CfKkbIY7MrzWZ8LTac7F3a1+EfPOU3wrhwBdHuvkqP9FLijkclCTATwAj6GGe/oFrdYpCiTjUdXIrUv0gExuZWd/bdlxSldqGM/D9riuxjpMEVFFV04y1cTlLI8x6sRcDaMtg0UDd+ToLSmeJ0/teECeD3Q26CGADq68L8fFH6uriaJyj8klJVqlRfLcyfEgnx4MsRHT44VKCk9Y60EpE7ozVQxGQ7pai4IraXSg85xeCV9t1ytjNcewKl68cdNmfnRfJj/iyTlRkmLve5W1doj8NcrbMMb5jOh1+eTYQtRc2m9s7oL7T/hY1aC5Ub11Hg9JMSm8GUlJZt6rx8Iii3NSpc4ZJ60Bje9BAxlcAI/malMYHuvhvAnL7WF9+89OU3MNXs9gPcJeyHyX07pqrRYzIIWr1EaZwO+C7d6cqywqPGMHR;24:k1yWCEdiPfbt+RL0wrRAoGwR9ggQVFz+PGRNXvcFJLXxOg6ZzeU5+vQcWupHp5f85CRxaLYXAvYPw3SCZ9PzjS4dhAhY+NSnCnPmKvCoFQw= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DB6PR0802MB2454;7:siWIyYJKa+DGOjuFBxLuSUs0B6kDQkSm3UhR22YRno+i7RMZXXrh4d6siZIoruBXkbL1B28u3dnHUDUX2qzZbxx5oCTYprk0mF0emJ8SfMPzcEtjuXBf7jr7Uzte8cjy8G6QutXk3KpVE39ei5t18CuhbExtdYjNuyhq6uFu9XH6R6x5JXVIG/5gwPRqONbqnTs0gljfUQJyymhLvTt/WPDrbTHlBF1N3psdwpzAtRIl6urFetiSSUemi35d97q8TbZo3RtX3Hu91kX6ROGV9kqyQzOgqBF2WiEWVk2rhIZMz/MFJmC7m7ccPDniLxbD9XP6+Hvf3i/b6WzTNr/IAQ== X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 May 2017 13:31:16.3721 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2454 X-SW-Source: 2017/txt/msg00368.txt.bz2 Hello, We've noticed that since a series of patches to add support for POSIX-1.2008 per-thread locales in August 2015, the size of the .data section in binaries produced by our toolchain has increased significantly due to the __global_locale struct in lib_a-locale.o. This is linked in when any strto*() function is called. This is true even for non-locale functions such as strtoul(). Inspection of the code shows that these have been deliberately re-architected as simple wrappers around the equivalent strto*_l(), passing in the global C locale as the locale parameter. As we wish to minimise code size and particularly RAM usage for microcontroller targets which do not usually require anything beyond the C locale, would it be possible to define a configure option that avoids linking in __global_locale, in a manner that would not require significant engineering effort? Alternatively, would there be a way to minimise the footprint of the __global_locale struct for this application? Thanks, -- Prakhar Bahuguna