From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id kI+jN7Ad7mYZNAAA62LTzQ:P1 (envelope-from ) for ; Sat, 21 Sep 2024 03:13:21 +0200 Received: from aspmx1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1.migadu.com with LMTPS id kI+jN7Ad7mYZNAAA62LTzQ (envelope-from ) for ; Sat, 21 Sep 2024 03:13:21 +0200 X-Envelope-To: patches@johnnyrichard.com Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=lists.sr.ht header.s=20240113 header.b=Gi8e12g6; dkim=pass header.d=maniero.me header.s=hostingermail1 header.b=iXXRTVos; spf=pass (aspmx1.migadu.com: domain of lists@sr.ht designates 46.23.81.152 as permitted sender) smtp.mailfrom=lists@sr.ht; dmarc=pass (policy=none) header.from=maniero.me; arc=pass ("mailchannels.net:s=arc-2022:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=johnnyrichard.com; s=key1; t=1726881200; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=qI7iJrfj3+kFapSCa2rUQC/6WCQndk1eiV4rlcderpg=; b=rmgkrVhai6TGQWy8XGpoKjAQh3ei9QWSQ5Gf9VvNxK5snYozvd00uQJOFTiP/8f+W+h8ll XkyLhS1maJSXQl8LBj3TY06MQE1GH0iOPB/wpQ/8FCLbvjzk+/K2MSo+omsoo6LPf/kTmq v05J9/1XfmWQ0airjTCmwhP0H/8RGK9i9DFGP6ft0euRB4LXNc6aCNpTWPzjv8L48e8sbV bLbloFdF6IuyBM9KPUSuaNQSP4jPV+MULPvuNbRj4HT4WhgE6/iBEkdJTF5A3lpPpkbbJ3 X1aOcnyhW+qegVfP2fSrJVuiSAMqYvCGWKMgMEC+2uwlPr+HztquvlexZatQGA== ARC-Authentication-Results: i=2; aspmx1.migadu.com; dkim=pass header.d=lists.sr.ht header.s=20240113 header.b=Gi8e12g6; dkim=pass header.d=maniero.me header.s=hostingermail1 header.b=iXXRTVos; spf=pass (aspmx1.migadu.com: domain of lists@sr.ht designates 46.23.81.152 as permitted sender) smtp.mailfrom=lists@sr.ht; dmarc=pass (policy=none) header.from=maniero.me; arc=pass ("mailchannels.net:s=arc-2022:i=1") ARC-Seal: i=2; s=key1; d=johnnyrichard.com; t=1726881200; a=rsa-sha256; cv=pass; b=XAu2eo7jmS9BOdkSUUejTz7Sbw3mdIFj7/O2NxxTy1LhY2/zR5Am/XYwfE4bJRJQkApqUs lzFhqt2kNMlcMLe/0H38CMmmiGnHx8W7kGYIc8OZguNmDUZUXBrt7OlSAIVzq6R6HuKWi1 RmU2/xbvgE8ZKynAxIlGgfYWOl9NLEJEs5uLUpZIvPcdjPsQMTTd/VBXtzGzVjpCWX3bSN UpDgMtA2vHEi8Rf7xpyQgRimQ0bMRW2jKs2C9ONhtKMCnmwEd3vEcI4S8sqeaFkZLkSD6c x1DG78Y4GMLeGJcawC4UCi0YL2IDP2UnGJ754io7BzF4AdnOAv9XCw0+snpSzQ== Received: from mail-a.sr.ht (mail-a.sr.ht [46.23.81.152]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id ACDA433CB0 for ; Sat, 21 Sep 2024 03:13:20 +0200 (CEST) DKIM-Signature: a=rsa-sha256; bh=zxyZx2InEvRHLY6X5c13sIM9KtP4IV9diGgT8EFkXQU=; c=simple/simple; d=lists.sr.ht; h=From:To:Cc:Subject:In-Reply-To:References:Date:List-Unsubscribe:List-Subscribe:List-Archive:List-Post:List-ID; q=dns/txt; s=20240113; t=1726881200; v=1; b=Gi8e12g6maVZiCv0vKLZakuLJ4BrxF7DNh71xatuqCM0Dz3oL3diu3yK1vLnEU70yvmuE2TI jbHFd87IJbqepg+Gy+9KDoLcwagnf2u6NS2nVQmAFB7ldpu2GMk1iCd0d70aiyT+wjBk+2ujr+d rhIGA6ko9Z1M13SPSNuvLFJSpy/bcKUgnYQgdMLk7ODxwi8p5n6NEslNlZrL9MXM/tmg9QQ98n7 O3rDvql9tYj5GiahTD/y/0t8+IfqSxBXJ/Ex+HbMKEoqjSR+3QFKh+4I32H1vDMC6g0Sw0NBZq9 /6DcdJu6YQkH8ceePhAXhX9y41JtJeo+QszsMz0/J+1xw== Received: from lists.sr.ht (unknown [46.23.81.154]) by mail-a.sr.ht (Postfix) with ESMTPSA id 7FC3E2028C for ; Sat, 21 Sep 2024 01:13:20 +0000 (UTC) Received: from flamingo.ash.relay.mailchannels.net (flamingo.ash.relay.mailchannels.net [23.83.222.60]) by mail-a.sr.ht (Postfix) with ESMTPS id 8532220278 for <~johnnyrichard/olang-devel@lists.sr.ht>; Sat, 21 Sep 2024 01:13:19 +0000 (UTC) X-Sender-Id: hostingeremail|x-authuser|carlos@maniero.me Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id D76E64812F for <~johnnyrichard/olang-devel@lists.sr.ht>; Sat, 21 Sep 2024 01:13:17 +0000 (UTC) Received: from nl-srv-smtpout1.hostinger.io (unknown [127.0.0.6]) (Authenticated sender: hostingeremail) by relay.mailchannels.net (Postfix) with ESMTPA id 4410E48100 for <~johnnyrichard/olang-devel@lists.sr.ht>; Sat, 21 Sep 2024 01:13:17 +0000 (UTC) ARC-Seal: i=1; s=arc-2022; d=mailchannels.net; t=1726881197; a=rsa-sha256; cv=none; b=5ClOCxA7cQuvS+o7fNJ0XdSYMDMSHcP3U0g7f0tDQ6YEFCKbTsGZKXP8fYa9JUmRv8sPPp KhAUXM40Yq3IhVXlvU9Vt3nMwTA9ybFfhQMwkTpRVWurbQA5yJN37Je04o0miWsHSYFNcd +UmhUxFE5m9lR4sNgukKslVjVLgaaR2Og/rvYHplTSmB+OtC/I/rTdMlWQmHOR+B8bkUt/ VuUrUqiJLP3QcoGqOLwW4I/wovaMUnV7ba4ZhfAqX359B9Z3KoqQqyFUz7XN3SBlLTAHk0 HfMbcO8RbxwNSOf3Bw+bGqiIv0U0XQATJtsyMadrcIkmOpiAgtmdZhL6rZ4R0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=mailchannels.net; s=arc-2022; t=1726881197; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=qI7iJrfj3+kFapSCa2rUQC/6WCQndk1eiV4rlcderpg=; b=9c1Jyz1SVxatn6ZP8EpyeaqmcT61xJdvujt84JLLvuyg6snjUeWyBV2uFGlWYk1R/xFSAX VMe9pfNOnbtbrdESqdVDangaIBHHe5wypZ0FFMGrbmK8xKWYHYHNQkvnBo8xsadNO+Pmq/ vZmVRQVnc98pSWQ4fSti+VkulQ3A7JDpMIHTDI7nQyOtQ2YxRVPLcCFeSBuRG48Vl0vvhJ votQNIbmELINm1c52GCC4Bc5rBCpk2GouZ3YVhqbuv/m7V7As22AnFgBj0xKf58Ez8P7pc cVQnJdIXeayvp7Y1M+DguwL+0hwqdz8d+Xm1Xmbkx2Ar77FCPY+0RsvlqU1/lg== ARC-Authentication-Results: i=1; rspamd-b5ccff48b-2mst5; auth=pass smtp.auth=hostingeremail smtp.mailfrom=carlos@maniero.me X-Sender-Id: hostingeremail|x-authuser|carlos@maniero.me X-MC-Relay: Neutral X-MailChannels-SenderId: hostingeremail|x-authuser|carlos@maniero.me X-MailChannels-Auth-Id: hostingeremail X-Company-Cure: 32fd33a43f491176_1726881197742_577848650 X-MC-Loop-Signature: 1726881197742:999778632 X-MC-Ingress-Time: 1726881197741 Received: from nl-srv-smtpout1.hostinger.io (nl-srv-smtpout1.hostinger.io [145.14.150.87]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384) by 100.117.124.208 (trex/7.0.2); Sat, 21 Sep 2024 01:13:17 +0000 From: Carlos Maniero DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=maniero.me; s=hostingermail1; t=1726881195; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=qI7iJrfj3+kFapSCa2rUQC/6WCQndk1eiV4rlcderpg=; b=iXXRTVos2uBsfwmKutU8UIkCwiZ1jVxSvUCtCHnll9T1JgA+Y4Ho3qhD7UsWke7SQzSsGS JN1UxSyEObjc8ZBkUkTel/tr44PPR5fgQ9Qzj6LObn/KO67p9rXRyA9ZxSUZo+pz5P6Ad1 7GApDnmLah44XW1ZUE4BDMva/RfxXmuzH0OKOa6nBcvJN8ya4Uyvlt3Os1IxJOgP3Z0ps5 GiZAiH1hoBLdGwLBHhMRZaDtsoxn3GvMU+/ibiXSYoP0DXwAB78s1lTADGypMRlW+X3dPT zkRKYUXh7g2iuTLPHt1ZI0kz7ijzXUHgZpdN2OkbUs0e8jltRe6Bq6Pva/BWwQ== To: ~johnnyrichard/olang-devel@lists.sr.ht Cc: Carlos Maniero , Johnny Richard Subject: [PATCH olang 4/5] codegen: reset variable offset on block leave Message-Id: <20240921011234.191248-5-carlos@maniero.me> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240921011234.191248-1-carlos@maniero.me> References: <20240921011234.191248-1-carlos@maniero.me> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Date: Sat, 21 Sep 2024 01:13:15 +0000 (UTC) X-CM-Envelope: MS4xfNEtvGBIyPwGsP3QIivs7PLKxQOZK5A0tM2wxR0hQpViEtG6WwKXidS2bY7BpeXK/NzOQiKm7Dcw+QOj/hB3RIYfMlOFKzMJ7TPXLjFPsdMt/BxO0DA+ hjTT3Y1qPs+JOZi8Va85kJ2EDHtkS18HAeakidzVXwzVrkHoRD+IUzbXb2h+MDiLDIP1vYwUKHjLtA785i0zxHbnfo4d+XZstNzSOYuAabnHg/h0Dwq3hsQH MMk+jtrWSND5zwL9Ne7i9kTivWy1XT7goOPHrXeJlKQ= X-CM-Analysis: v=2.4 cv=c5X5Qg9l c=1 sm=1 tr=0 ts=66ee1dab a=WwxFCuf3mf1fs3oSi6/dng==:117 a=WwxFCuf3mf1fs3oSi6/dng==:17 a=MKtGQD3n3ToA:10 a=1oJP67jkp3AA:10 a=jziKOLAnAAAA:8 a=bx1Hct5_WcwVMAdy6RQA:9 a=zZCYzV9kfG8A:10 a=1H4LsFAHGNa36HLDfRac:22 a=1ljl-wuu_96014yfT5Vk:22 a=BXDaF_L80NY05PYiAFlV:22 X-AuthUser: carlos@maniero.me X-Sourcehut-Patchset-Status: UNKNOWN List-Unsubscribe: List-Subscribe: List-Archive: Archived-At: List-Post: List-ID: ~johnnyrichard/olang-devel <~johnnyrichard/olang-devel.lists.sr.ht> Sender: ~johnnyrichard/olang-devel <~johnnyrichard/olang-devel@lists.sr.ht> X-Migadu-Flow: FLOW_IN X-Migadu-Country: NL X-Migadu-Spam-Score: -0.16 X-Spam-Score: -0.16 X-Migadu-Queue-Id: ACDA433CB0 X-Migadu-Scanner: mx10.migadu.com X-TUID: TMsXd8M6ZKQl The block should reset the offset to avoid unnecessary stack consumption. Signed-off-by: Carlos Maniero Co-authored-by: Johnny Richard --- src/codegen_linux_x86_64.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/codegen_linux_x86_64.c b/src/codegen_linux_x86_64.c index 4e0ea52..640c9fb 100644 --- a/src/codegen_linux_x86_64.c +++ b/src/codegen_linux_x86_64.c @@ -333,7 +333,7 @@ codegen_linux_x86_64_emit_expression(codegen_x86_64_t *codegen, ast_node_t *expr static void codegen_linux_x86_64_emit_block(codegen_x86_64_t *codegen, ast_block_t *block) { - + size_t block_offset = codegen->base_offset; size_t nodes_len = list_size(block->nodes); for (size_t i = 0; i < nodes_len; ++i) { @@ -414,6 +414,8 @@ codegen_linux_x86_64_emit_block(codegen_x86_64_t *codegen, ast_block_t *block) } } } + + codegen->base_offset = block_offset; } static void -- 2.34.1