From b46ae6da882b09242d230d4ec532e534c9bd1323 Mon Sep 17 00:00:00 2001 From: Ulrich Weigand Date: Mon, 7 Feb 2011 15:26:06 +0000 Subject: [PATCH] spu.c (spu_init_libfuncs): Install SImode and DImode trapping arithmetic libfuncs. * config/spu/spu.c (spu_init_libfuncs): Install SImode and DImode trapping arithmetic libfuncs. From-SVN: r169886 --- gcc/ChangeLog | 5 +++++ gcc/config/spu/spu.c | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index cc625d9..55c1643 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2011-02-07 Ulrich Weigand + + * config/spu/spu.c (spu_init_libfuncs): Install SImode and + DImode trapping arithmetic libfuncs. + 2011-02-07 Richard Guenther PR tree-optimization/47621 diff --git a/gcc/config/spu/spu.c b/gcc/config/spu/spu.c index 324ac4d..d80d86d 100644 --- a/gcc/config/spu/spu.c +++ b/gcc/config/spu/spu.c @@ -5641,6 +5641,19 @@ spu_init_libfuncs (void) set_conv_libfunc (ufloat_optab, DFmode, SImode, "__float_unssidf"); set_conv_libfunc (ufloat_optab, DFmode, DImode, "__float_unsdidf"); + set_optab_libfunc (addv_optab, SImode, "__addvsi3"); + set_optab_libfunc (subv_optab, SImode, "__subvsi3"); + set_optab_libfunc (smulv_optab, SImode, "__mulvsi3"); + set_optab_libfunc (sdivv_optab, SImode, "__divvsi3"); + set_optab_libfunc (negv_optab, SImode, "__negvsi2"); + set_optab_libfunc (absv_optab, SImode, "__absvsi2"); + set_optab_libfunc (addv_optab, DImode, "__addvdi3"); + set_optab_libfunc (subv_optab, DImode, "__subvdi3"); + set_optab_libfunc (smulv_optab, DImode, "__mulvdi3"); + set_optab_libfunc (sdivv_optab, DImode, "__divvdi3"); + set_optab_libfunc (negv_optab, DImode, "__negvdi2"); + set_optab_libfunc (absv_optab, DImode, "__absvdi2"); + set_optab_libfunc (smul_optab, TImode, "__multi3"); set_optab_libfunc (sdiv_optab, TImode, "__divti3"); set_optab_libfunc (smod_optab, TImode, "__modti3"); -- 2.7.4