From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.smtpout.orange.fr (smtp-28.smtpout.orange.fr [80.12.242.28]) by sourceware.org (Postfix) with ESMTPS id CED113858C66 for ; Mon, 3 Jul 2023 12:55:40 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org CED113858C66 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=jacob.remcomp.fr Authentication-Results: sourceware.org; spf=none smtp.mailfrom=jacob.remcomp.fr Received: from smtpclient.apple ([90.22.252.13]) by smtp.orange.fr with ESMTP id GJ5fqhPgnJgF8GJ5fqa19c; Mon, 03 Jul 2023 14:55:39 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wanadoo.fr; s=t20230301; t=1688388939; bh=eEvcmLVr5MvgjNOnPVmxtZqNbdaVN3g4dbZV+/0X3Ss=; h=From:Subject:Date:To; b=kuo6rdybmINJOT9I74jrStFcM1lbjOZuD+kYVgQPxd66Lhuv29lmy/c/LqNqzq+ih ansgfqT+I72zohibMeKgdjv+jerjfepPyLP02h5AcWfMTJTHZmy6NsjYCEjiQFrZlO 9SshGIu5ydDZVFkQN5Vd3NYLLTo/1GhdJFFdT0rzro8L089sCtqXEIH3SJJKWrR9fT WL1bxSLp8UWuoeoVCcw/eiLYR/28MM9XL9mxChXEUB4Vi02SLVmWCPZDpLCjtW3dAw so0+n3tWIkeKIqEzkk6CX0mravIrfnyDA2SQHTCFYQ4S3QHPQFiCdgB5QYqQ1hg01w bkBEnchTZNo8w== X-ME-Helo: smtpclient.apple X-ME-Date: Mon, 03 Jul 2023 14:55:39 +0200 X-ME-IP: 90.22.252.13 From: jacob navia Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.600.7\)) Subject: Tiny asm Message-Id: <3055AD43-B3CD-4D5E-B867-D314464A0E30@jacob.remcomp.fr> Date: Mon, 3 Jul 2023 14:55:28 +0200 To: gcc@gcc.gnu.org X-Mailer: Apple Mail (2.3731.600.7) X-Spam-Status: No, score=-1.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Dear Friends: 1) I have (of course) kept your copyright notice at the start of the =C2=AB= asm.h =C2=BB header file of my project. 2) I have published my source code using your GPL V3 license I am not trying to steal you anything. And I would insist that I have = great respect for the people working with gcc. In no way I am trying to = minimize their accomplishments. What happens is that layers of code = produced by many developers have accumulated across the years, like the = dust in the glass shelf of my grand mother back home. Sometimes in = spring she would clean it.=20 I am doing just that. That said, now I have some questions: 1) What kind of options does gcc pass to its assembler? Is there in the = huge source tree of gcc a place where those options are emitted? This would allow me to keep only those options into tiny-asm and erase = all others (and the associated code) 2) I have to re-engineer the output of assembler instructions. Instead = of writing to an assembler file (or to a memory assembler file) I will = have to convince gcc to output into a buffer, and will pass the buffer = address to the assembler.=20 So, instead of outputting several MBs worth of assembler instructions, = we would pass only 8 bytes of a buffer address. If the buffer is small = (4K, for instance), it would pass into the CPU cache. Since the CPU = cache is 16KB some of it may be kept there. 3) To do that, I need to know where in the back end source code you are = writing to disk. Thanks for your help, and thanks to the people that posted encouraging = words. jacob