On Mon, Jun 22, 2015 at 5:39 PM, Kirill Yukhin <kirill.yuk...@gmail.com> wrote: > Hello, > Patch in the bottom adds support of IA MCU psABI to libgcc > (enables soft-fp) and libdecnumber (enables it for IA MCU). > > Bootstrapped and regtested on top of [1/3] patch. > > config/ > * dfp.m4 (enable_decimal_float): Also set to yes for > i?86*-*-elfiamcu target. > gcc/ > * configure: Regenerated. > libdecnumber/ > * configure: Regenerated. > libgcc/ > * config.host: Support i[34567]86-*-elfiamcu target. > * config/i386/32/t-iamcu: New file. > * configure: Regenerated. > > Is it OK for trunk?
Please introduce config/t-softfp-sfdftf as an union of t-softfp-sfdf and t-softfp-tf and use it instead of config/t-softfp-sfdf. You will be able to remove all softfp stuff from t-iamcu then. OK with the above improvement. Thanks, Uros. > -- > Thanks, K > > diff --git a/config/dfp.m4 b/config/dfp.m4 > index 48683f0..5b29089 100644 > --- a/config/dfp.m4 > +++ b/config/dfp.m4 > @@ -21,7 +21,7 @@ Valid choices are 'yes', 'bid', 'dpd', and 'no'.]) ;; > [ > case $1 in > powerpc*-*-linux* | i?86*-*-linux* | x86_64*-*-linux* | s390*-*-linux* | > \ > - i?86*-*-gnu* | \ > + i?86*-*-elfiamcu | i?86*-*-gnu* | \ > i?86*-*-mingw* | x86_64*-*-mingw* | \ > i?86*-*-cygwin* | x86_64*-*-cygwin*) > enable_decimal_float=yes > diff --git a/gcc/configure b/gcc/configure > index b26a86f..64eeac6 100755 > --- a/gcc/configure > +++ b/gcc/configure > @@ -7317,7 +7317,7 @@ else > > case $target in > powerpc*-*-linux* | i?86*-*-linux* | x86_64*-*-linux* | s390*-*-linux* | > \ > - i?86*-*-gnu* | \ > + i?86*-*-elfiamcu | i?86*-*-gnu* | \ > i?86*-*-mingw* | x86_64*-*-mingw* | \ > i?86*-*-cygwin* | x86_64*-*-cygwin*) > enable_decimal_float=yes > diff --git a/libdecnumber/configure b/libdecnumber/configure > index 2720f46..964837d 100755 > --- a/libdecnumber/configure > +++ b/libdecnumber/configure > @@ -4614,7 +4614,7 @@ else > > case $target in > powerpc*-*-linux* | i?86*-*-linux* | x86_64*-*-linux* | s390*-*-linux* | > \ > - i?86*-*-gnu* | \ > + i?86*-*-elfiamcu | i?86*-*-gnu* | \ > i?86*-*-mingw* | x86_64*-*-mingw* | \ > i?86*-*-cygwin* | x86_64*-*-cygwin*) > enable_decimal_float=yes > diff --git a/libgcc/config.host b/libgcc/config.host > index 46666df..dd8e356 100644 > --- a/libgcc/config.host > +++ b/libgcc/config.host > @@ -562,6 +562,9 @@ x86_64-*-darwin*) > tm_file="$tm_file i386/darwin-lib.h" > extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o > crtfastmath.o" > ;; > +i[34567]86-*-elfiamcu) > + tmake_file="$tmake_file i386/t-crtstuff t-softfp-sfdf > i386/32/t-softfp i386/32/t-iamcu i386/t-softfp t-softfp t-dfprules" > + ;; > i[34567]86-*-elf*) > tmake_file="$tmake_file i386/t-crtstuff t-crtstuff-pic t-libgcc-pic" > ;; > diff --git a/libgcc/config/i386/32/t-iamcu b/libgcc/config/i386/32/t-iamcu > new file mode 100644 > index 0000000..0752bff > --- /dev/null > +++ b/libgcc/config/i386/32/t-iamcu > @@ -0,0 +1,6 @@ > +softfp_float_modes += tf > +softfp_extensions += sftf dftf xftf > +softfp_truncations += tfsf tfdf tfxf > +softfp_exclude_libgcc2 := n > + > +HOST_LIBGCC2_CFLAGS += -mlong-double-80 > diff --git a/libgcc/configure b/libgcc/configure > index ce66d1d..e22cbcb 100644 > --- a/libgcc/configure > +++ b/libgcc/configure > @@ -4436,7 +4436,7 @@ else > > case $host in > powerpc*-*-linux* | i?86*-*-linux* | x86_64*-*-linux* | s390*-*-linux* | > \ > - i?86*-*-gnu* | \ > + i?86*-*-elfiamcu | i?86*-*-gnu* | \ > i?86*-*-mingw* | x86_64*-*-mingw* | \ > i?86*-*-cygwin* | x86_64*-*-cygwin*) > enable_decimal_float=yes > > >