aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-flow.h
diff options
context:
space:
mode:
authorUros Bizjak <uros@gcc.gnu.org>2007-01-18 14:06:57 +0100
committerUros Bizjak <uros@gcc.gnu.org>2007-01-18 14:06:57 +0100
commitd85c755027830f7779768c633aecdaf530a47034 (patch)
treeb09549c3db8a84ccbaeffdb31e9f328b4e85b663 /gcc/tree-flow.h
parent590b1f2d1f60b909e45e9b47f8a3e71a608dee20 (diff)
downloadgcc-d85c755027830f7779768c633aecdaf530a47034.zip
gcc-d85c755027830f7779768c633aecdaf530a47034.tar.gz
gcc-d85c755027830f7779768c633aecdaf530a47034.tar.bz2
reg-stack.c (subst_stack_regs_pat): Use generic code for instructions that operate on the top of stack.
* reg-stack.c (subst_stack_regs_pat) [UNSPEC_SINCOS_COS, UNSPEC_XTRACT_FRACT]: Use generic code for instructions that operate on the top of stack. [UNSPEC_SINCOS_SIN, UNSPEC_XTRACT_EXP, UNSPEC_TAN]: Rewrite register handling of instructions that output to the second stack slot. [UNSPEC_TAN_ONE, UNSPEC_TAN_TAN]: Remove. (move_for_stack_reg): Special-case check for dead destination stack slot for constant load of 1.0 inside UNSPEC_TAN. * config/i386/i386.md (UNSPEC_TAN): New constant. (UNSPEC_TAN_ONE, UNSPEC_TAN_TAN): Remove. (fptanxf4_i387, fptan_extend<mode>xf4_i387): New patterns to correctly model move of constant 1.0 to top stack slot. (*tandf3_1, *tansf3_1, *tanxf3_1): Remove insn patterns. (unnamed peephole2 pattern): Remove corresponding peephole2 pattern that optimizes tan insn and loading of constant 1.0. (tanxf2): Use fptanxf4_i387. (tan<mode>2): Rename from tansf2 and tandf2 and macroize insn patterns using X87MODEF12 mode macro. Use fptan_extend<mode>xf4_i387 and truncate result to requested mode. Use SSE_FLOAT_MODE_P to disable patterns for SSE math. (sincos<mode>3): Use truncxf<mode>2_i387_noop for truncation. (fyl2x_extend<mode>xf3_i387): Use X87MODEF12 for operand 1. testsuite/ChangeLog: * gcc.target/i386/387-8.c: Update comment about optimizing inherent load of 1.0 of fptan instruction. From-SVN: r120899
Diffstat (limited to 'gcc/tree-flow.h')
0 files changed, 0 insertions, 0 deletions