* [PATCH] MIPS: asm: asmmacro: Replace "add" instructions with "addu"
@ 2015-01-21 15:26 Markos Chandras
2015-01-21 15:26 ` Markos Chandras
2015-01-21 17:58 ` David Daney
0 siblings, 2 replies; 3+ messages in thread
From: Markos Chandras @ 2015-01-21 15:26 UTC (permalink / raw)
To: linux-mips; +Cc: Markos Chandras, Paul Burton, Maciej W. Rozycki, stable
The "add" instruction is actually a macro in binutils and depending on
the size of the immediate it can expand to an "addi" instruction.
However, the "addi" instruction traps on overflows which is not
something we want on address calculation.
Link: http://www.linux-mips.org/archives/linux-mips/2015-01/msg00121.html
Cc: Paul Burton <paul.burton@imgtec.com>
Cc: Maciej W. Rozycki <macro@linux-mips.org>
Cc: <stable@vger.kernel.org> # v3.15+
Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
---
Moving this out of the R6 patchset as requested by Maciej
---
arch/mips/include/asm/asmmacro.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/mips/include/asm/asmmacro.h b/arch/mips/include/asm/asmmacro.h
index fe08084f5adb..42b90c9fd756 100644
--- a/arch/mips/include/asm/asmmacro.h
+++ b/arch/mips/include/asm/asmmacro.h
@@ -304,7 +304,7 @@
.set push
.set noat
SET_HARDFLOAT
- add $1, \base, \off
+ addu $1, \base, \off
.word LDD_MSA_INSN | (\wd << 6)
.set pop
.endm
@@ -313,7 +313,7 @@
.set push
.set noat
SET_HARDFLOAT
- add $1, \base, \off
+ addu $1, \base, \off
.word STD_MSA_INSN | (\wd << 6)
.set pop
.endm
--
2.2.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH] MIPS: asm: asmmacro: Replace "add" instructions with "addu"
2015-01-21 15:26 [PATCH] MIPS: asm: asmmacro: Replace "add" instructions with "addu" Markos Chandras
@ 2015-01-21 15:26 ` Markos Chandras
2015-01-21 17:58 ` David Daney
1 sibling, 0 replies; 3+ messages in thread
From: Markos Chandras @ 2015-01-21 15:26 UTC (permalink / raw)
To: linux-mips; +Cc: Markos Chandras, Paul Burton, Maciej W. Rozycki, stable
The "add" instruction is actually a macro in binutils and depending on
the size of the immediate it can expand to an "addi" instruction.
However, the "addi" instruction traps on overflows which is not
something we want on address calculation.
Link: http://www.linux-mips.org/archives/linux-mips/2015-01/msg00121.html
Cc: Paul Burton <paul.burton@imgtec.com>
Cc: Maciej W. Rozycki <macro@linux-mips.org>
Cc: <stable@vger.kernel.org> # v3.15+
Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
---
Moving this out of the R6 patchset as requested by Maciej
---
arch/mips/include/asm/asmmacro.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/mips/include/asm/asmmacro.h b/arch/mips/include/asm/asmmacro.h
index fe08084f5adb..42b90c9fd756 100644
--- a/arch/mips/include/asm/asmmacro.h
+++ b/arch/mips/include/asm/asmmacro.h
@@ -304,7 +304,7 @@
.set push
.set noat
SET_HARDFLOAT
- add $1, \base, \off
+ addu $1, \base, \off
.word LDD_MSA_INSN | (\wd << 6)
.set pop
.endm
@@ -313,7 +313,7 @@
.set push
.set noat
SET_HARDFLOAT
- add $1, \base, \off
+ addu $1, \base, \off
.word STD_MSA_INSN | (\wd << 6)
.set pop
.endm
--
2.2.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] MIPS: asm: asmmacro: Replace "add" instructions with "addu"
2015-01-21 15:26 [PATCH] MIPS: asm: asmmacro: Replace "add" instructions with "addu" Markos Chandras
2015-01-21 15:26 ` Markos Chandras
@ 2015-01-21 17:58 ` David Daney
1 sibling, 0 replies; 3+ messages in thread
From: David Daney @ 2015-01-21 17:58 UTC (permalink / raw)
To: Markos Chandras; +Cc: linux-mips, Paul Burton, Maciej W. Rozycki, stable
On 01/21/2015 07:26 AM, Markos Chandras wrote:
> The "add" instruction is actually a macro in binutils and depending on
> the size of the immediate it can expand to an "addi" instruction.
> However, the "addi" instruction traps on overflows which is not
> something we want on address calculation.
>
I like it:
Acked-by: David Daney <david.daney@cavium.com>
> Link: http://www.linux-mips.org/archives/linux-mips/2015-01/msg00121.html
> Cc: Paul Burton <paul.burton@imgtec.com>
> Cc: Maciej W. Rozycki <macro@linux-mips.org>
> Cc: <stable@vger.kernel.org> # v3.15+
Is it causing problems with existing kernels, or is it only in
preparation for MIPS r6? If the later, it probably isn't stable material.
> Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
> ---
> Moving this out of the R6 patchset as requested by Maciej
> ---
> arch/mips/include/asm/asmmacro.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/mips/include/asm/asmmacro.h b/arch/mips/include/asm/asmmacro.h
> index fe08084f5adb..42b90c9fd756 100644
> --- a/arch/mips/include/asm/asmmacro.h
> +++ b/arch/mips/include/asm/asmmacro.h
> @@ -304,7 +304,7 @@
> .set push
> .set noat
> SET_HARDFLOAT
> - add $1, \base, \off
> + addu $1, \base, \off
> .word LDD_MSA_INSN | (\wd << 6)
> .set pop
> .endm
> @@ -313,7 +313,7 @@
> .set push
> .set noat
> SET_HARDFLOAT
> - add $1, \base, \off
> + addu $1, \base, \off
> .word STD_MSA_INSN | (\wd << 6)
> .set pop
> .endm
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-01-21 17:58 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-21 15:26 [PATCH] MIPS: asm: asmmacro: Replace "add" instructions with "addu" Markos Chandras
2015-01-21 15:26 ` Markos Chandras
2015-01-21 17:58 ` David Daney
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox