aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/cris
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@axis.com>2016-06-20 20:01:20 +0000
committerHans-Peter Nilsson <hp@gcc.gnu.org>2016-06-20 20:01:20 +0000
commitb2b4e462a8ba31b605fa8caeeff1041331658414 (patch)
treef2dde85345bb6aaf5f756385f352402dfcaad83c /gcc/config/cris
parentc4ff221ea83c3d119bf5bda8958a3da09ad9d57f (diff)
downloadgcc-b2b4e462a8ba31b605fa8caeeff1041331658414.zip
gcc-b2b4e462a8ba31b605fa8caeeff1041331658414.tar.gz
gcc-b2b4e462a8ba31b605fa8caeeff1041331658414.tar.bz2
re PR target/71571 ([CRIS] Multiple inheritance non-virtual PIC thunk causes crash)
PR target/71571 * config/cris/cris.c (cris_asm_output_mi_thunk): Add missing "ba" delay-slot "nop" for PIC with CRIS v32. Also add missing leading space for PIC with non-v32 and the common non-PIC "jump". From-SVN: r237615
Diffstat (limited to 'gcc/config/cris')
-rw-r--r--gcc/config/cris/cris.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/config/cris/cris.c b/gcc/config/cris/cris.c
index 0df3c5d..971d07f 100644
--- a/gcc/config/cris/cris.c
+++ b/gcc/config/cris/cris.c
@@ -2772,18 +2772,18 @@ cris_asm_output_mi_thunk (FILE *stream,
{
fprintf (stream, "\tba ");
assemble_name (stream, name);
- fprintf (stream, "%s\n", CRIS_PLT_PCOFFSET_SUFFIX);
+ fprintf (stream, "%s\n\tnop\n", CRIS_PLT_PCOFFSET_SUFFIX);
}
else
{
- fprintf (stream, "add.d ");
+ fprintf (stream, "\tadd.d ");
assemble_name (stream, name);
fprintf (stream, "%s,$pc\n", CRIS_PLT_PCOFFSET_SUFFIX);
}
}
else
{
- fprintf (stream, "jump ");
+ fprintf (stream, "\tjump ");
assemble_name (stream, XSTR (XEXP (DECL_RTL (funcdecl), 0), 0));
fprintf (stream, "\n");