alpha_emit_floatuns buglet.

Richard Henderson rth@cygnus.com
Thu Apr 20 12:11:00 GMT 2000


Amazing what verify_flow_info finds...


r~


        * config/alpha/alpha.c (alpha_emit_floatuns): Emit missing barrier.

Index: alpha.c
===================================================================
RCS file: /cvs/gcc/egcs/gcc/config/alpha/alpha.c,v
retrieving revision 1.122.2.2
retrieving revision 1.122.2.3
diff -c -p -d -r1.122.2.2 -r1.122.2.3
*** alpha.c	2000/04/16 00:25:17	1.122.2.2
--- alpha.c	2000/04/20 19:04:01	1.122.2.3
*************** alpha_emit_set_long_const (target, c1, c
*** 1505,1510 ****
--- 1505,1511 ----
  
  	itoft	$16,$f11
  	lda	$2,LC0
+ 	cmplt	$16,0,$1
  	cpyse	$f11,$f31,$f10
  	cpyse	$f31,$f11,$f11
  	s4addq	$1,$2,$1
*************** alpha_emit_floatuns (operands)
*** 1540,1545 ****
--- 1541,1547 ----
  
    emit_insn (gen_rtx_SET (VOIDmode, out, gen_rtx_FLOAT (mode, in)));
    emit_jump_insn (gen_jump (donelab));
+   emit_barrier ();
  
    emit_label (neglab);
  


More information about the Gcc-patches mailing list