summaryrefslogtreecommitdiff
path: root/pkg/qbe/patch
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2024-02-08 00:50:13 -0800
committerMichael Forney <mforney@mforney.org>2024-02-08 00:55:32 -0800
commitc323a8d150533d2cf08a2c855a091a8ec74c3ebd (patch)
treee6975f8cc4dc50c5727c4d71de572bd80371f365 /pkg/qbe/patch
parentd86181765404ea228ba404c80f41f8330f574208 (diff)
qbe: Update to latest git
Diffstat (limited to 'pkg/qbe/patch')
-rw-r--r--pkg/qbe/patch/0001-amd64-optimize-loading-0-into-registers.patch16
1 files changed, 8 insertions, 8 deletions
diff --git a/pkg/qbe/patch/0001-amd64-optimize-loading-0-into-registers.patch b/pkg/qbe/patch/0001-amd64-optimize-loading-0-into-registers.patch
index da5bcc1f..e7d5d5b5 100644
--- a/pkg/qbe/patch/0001-amd64-optimize-loading-0-into-registers.patch
+++ b/pkg/qbe/patch/0001-amd64-optimize-loading-0-into-registers.patch
@@ -1,4 +1,4 @@
-From 97d75808dc4e8eff6d15a56e6812af168dc265d7 Mon Sep 17 00:00:00 2001
+From 55b93f727cbad62a13dce0136077b0ffb47b90d7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Nogueira?= <erico.erc@gmail.com>
Date: Sun, 11 Jul 2021 19:19:12 -0300
Subject: [PATCH] amd64: optimize loading 0 into registers
@@ -23,10 +23,10 @@ Co-authored-by: Michael Forney <mforney@mforney.org>
2 files changed, 19 insertions(+), 5 deletions(-)
diff --git a/amd64/emit.c b/amd64/emit.c
-index b8e9e8e..388b8b3 100644
+index 51d1a5c..a3e72e6 100644
--- a/amd64/emit.c
+++ b/amd64/emit.c
-@@ -450,6 +450,18 @@ emitins(Ins i, Fn *fn, FILE *f)
+@@ -458,6 +458,18 @@ emitins(Ins i, Fn *fn, FILE *f)
if (req(i.to, i.arg[0]))
break;
t0 = rtype(i.arg[0]);
@@ -46,10 +46,10 @@ index b8e9e8e..388b8b3 100644
&& t0 == RCon
&& fn->con[i.arg[0].val].type == CBits) {
diff --git a/amd64/isel.c b/amd64/isel.c
-index 4181e26..d4f0b69 100644
+index e29c8bf..4bec2e1 100644
--- a/amd64/isel.c
+++ b/amd64/isel.c
-@@ -69,7 +69,7 @@ fixarg(Ref *r, int k, Ins *i, Fn *fn)
+@@ -85,7 +85,7 @@ fixarg(Ref *r, int k, Ins *i, Fn *fn)
r1 = r0 = *r;
s = rslot(r0, fn);
op = i ? i->op : Ocopy;
@@ -58,8 +58,8 @@ index 4181e26..d4f0b69 100644
/* load floating points from memory
* slots, they can't be used as
* immediates
-@@ -84,13 +84,15 @@ fixarg(Ref *r, int k, Ins *i, Fn *fn)
- a.offset.label = intern(buf);
+@@ -99,13 +99,15 @@ fixarg(Ref *r, int k, Ins *i, Fn *fn)
+ a.offset.sym.id = intern(buf);
fn->mem[fn->nmem-1] = a;
}
- else if (op != Ocopy && k == Kl && noimm(r0, fn)) {
@@ -79,5 +79,5 @@ index 4181e26..d4f0b69 100644
else if (s != -1) {
/* load fast locals' addresses into
--
-2.34.1
+2.42.0