From: David Given Date: Fri, 28 Jun 2013 23:32:39 +0000 (+0100) Subject: Fix incorrect encoding of 'push lr' and 'pop pc'. X-Git-Tag: release-6-0-pre-5~10^2~3^2~1 X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=edb174da8d16d7c7429a790c4ee985996f848105;p=ack.git Fix incorrect encoding of 'push lr' and 'pop pc'. --HG-- branch : dtrg-videocore --- diff --git a/mach/vc4/as/mach5.c b/mach/vc4/as/mach5.c index 350806e11..e98f67594 100644 --- a/mach/vc4/as/mach5.c +++ b/mach/vc4/as/mach5.c @@ -174,13 +174,11 @@ void stack_instr(quad opcode, int loreg, int hireg, int extrareg) case 26: /* lr */ extrareg = 26; hireg = loreg = -1; - b = 0; break; case 31: /* pc */ extrareg = 31; hireg = loreg = -1; - b = 0; break; default: @@ -204,7 +202,10 @@ void stack_instr(quad opcode, int loreg, int hireg, int extrareg) serror("invalid register range"); if (hireg == -1) - m = 31; + { + b = 3; + m = 15; + } else m = hireg - loreg;