This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] S/390: DFP support 1/4: Add z9-ec option
- From: "Ulrich Weigand" <uweigand at de dot ibm dot com>
- To: krebbel1 at de dot ibm dot com (Andreas Krebbel)
- Cc: gcc-patches at gcc dot gnu dot org, Ulrich dot Weigand at de dot ibm dot com
- Date: Sat, 17 Mar 2007 18:13:48 +0100 (CET)
- Subject: Re: [PATCH] S/390: DFP support 1/4: Add z9-ec option
Andreas Krebbel wrote:
> 2007-03-16 Andreas Krebbel <krebbel1@de.ibm.com>
>
> * config/s390/s390.opt ("mhard-float", "msoft-float"): Bit value
> inverted and documentation adjusted.
> ("mhard-dfp", "msoft-dfp"): New options.
> * config/s390/s390.c (s390_handle_arch_option): New architecture
> switch: z9-ec.
> (override_options): Sanity checks for the new options added.
> * config.gcc: New architecture switch: z9-ec.
> * config/s390/s390.h (processor_flags): PF_DFP added.
> (TARGET_CPU_DFP, TARGET_DFP): Macro definitions added.
> (TARGET_DEFAULT): Due to the s390.opt changes hard float is enabled
> when the bit is NOT set so remove it from the defaults.
> 2007-03-16 Andreas Krebbel <krebbel1@de.ibm.com>
>
> * config/s390/s390.md (UNSPEC_COPYSIGN): New constant.
> (op_type attribute): RRF instruction type added.
> (fT0): New mode attribute.
> ("*movdi_64dfp", "*movdf_64dfp", "*neg<mode>2_nocc", "*abs<mode>2_nocc",
> "*negabs<mode>2_nocc", "copysign<mode>3"): Insn definitions added.
> * config/s390/s390.h (SECONDARY_MEMORY_NEEDED): Due to a new instruction
> no secondary memory is needed when moving DFmode values between GPRs
> and FPRs.
> 2007-03-16 Andreas Krebbel <krebbel1@de.ibm.com>
>
> * config/s390/s390.md: Only non-functional changes. Renamed
> FPR mode macro to BFP all over the file.
> 2007-03-16 Andreas Krebbel <krebbel1@de.ibm.com>
>
> * config/s390/s390.md (op_type attribute): RRR instruction type added.
> (FP, DFP, SD_SF, DD_DF, TD_TF): New mode macros.
> (xde, xdee): Mode attributes adjusted to support DFP modes.
> (RRer, f0, op1, Rf, bt, bfp, HALF_TMODE): New mode attributes added.
> ("cmp<mode>", "*cmp<mode>_css_0", "*cmp<mode>_ccs", TF move splitters,
> DF move splitters, "floatdi<mode>2", "add<mode>3", "*add<mode>3",
> "*add<mode>3_cc", "*add<mode>3_cconly", "sub<mode>3", "*sub<mode>3",
> "*sub<mode>3_cc", "*sub<mode>3_cconly", "mul<mode>3", "*mul<mode>3",
> "div<mode>3", "*div<mode>3", "*neg<mode>2_nocc", "*abs<mode>2_nocc",
> "*negabs<mode>2_nocc", "copysign<mode>3"): Adjusted to support DFP
> numbers.
> ("*movtf_64", "*movtf_31", "*movdf_64dfp", "*movdf_64", "*movdf_31",
> "movsf"): Insn definitions removed.
> ("*mov<mode>_64", "*mov<mode>_31", "mov<mode>", "*mov<mode>_64dfp",
> "*mov<mode>_64", "*mov<mode>_31", "fix_trunc<DFP:mode>di2",
> "trunctddd2", "truncddsd2", "extendddtd2", "extendsddd2"): Insn
> definitions added.
> ("fixuns_truncdddi2", "fixuns_trunctddi2", "mov<mode>",
> "reload_in<mode>", "reload_out<mode>"): Expander added.
> ("movtf", "movdf", "reload_outtf", "reload_outdf", "reload_intf"):
> Expander removed.
These are all OK, thanks!
Bye,
Ulrich
--
Dr. Ulrich Weigand
GNU Toolchain for Linux on System z and Cell BE
Ulrich.Weigand@de.ibm.com