/* Copyright 2005 Free Software Foundation, Inc. This file is part of GDB. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ void gt (void); int main (void) { gt (); return 0; } /* gt(). Obtained from the following code: void gt (void) { double a = 360.0; if (a > 0) a = 0.0; else a = -a; } The purpose of the test is to stop just before the check against zero, and do a stepi. GDB should step one instruction and stop, rather than letting the program continue until the it terminates. */ asm(" .rdata\n" " .align 3\n" "$SYMBOL_LC0:\n" " .long 0\n" " .long 1081507840\n" " .text\n" " .align 2\n" " .globl gt\n" " .ent gt\n" "gt:\n" " .frame $15,32,$26,0\n" " .mask 0x4008000,-32\n" "$SYMBOL_LM1:\n" " ldgp $29,0($27)\n" "$gt..ng:\n" " lda $30,-32($30)\n" " stq $26,0($30)\n" " stq $15,8($30)\n" " bis $31,$30,$15\n" " .prologue 1\n" "$SYMBOL_LM2:\n" " lda $1,$SYMBOL_LC0\n" " ldt $f10,0($1)\n" " stt $f10,16($15)\n" "$SYMBOL_LM3:\n" " ldt $f10,16($15)\n" " cmptlt $f31,$f10,$f10\n" " fbne $f10,$SYMBOL_L3\n" /* Stop at this instruction. */ " br $31,$SYMBOL_L2\n" "$SYMBOL_L3:\n" "$SYMBOL_LM4:\n" " stt $f31,16($15)\n" " br $31,$SYMBOL_L4\n" "$SYMBOL_L2:\n" "$SYMBOL_LM5:\n" " ldt $f10,16($15)\n" " cpysn $f10,$f10,$f10\n" " stt $f10,16($15)\n" "$SYMBOL_L4:\n" "$SYMBOL_LM6:\n" " bis $31,$15,$30\n" " ldq $26,0($30)\n" " ldq $15,8($30)\n" " lda $30,32($30)\n" " ret $31,($26),1\n" " .end gt\n");