Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > by-pkgid > b5e52bbfb4bb11a6cbed452927fba979 > files > 119

gcc-4.1.2-50.el5.src.rpm

2007-01-24  Geoffrey Keating  <geoffk@apple.com>

	* unwind-dw2.c (execute_stack_op): Handle DW_OP_swap.

--- gcc/unwind-dw2.c	(revision 121164)
+++ gcc/unwind-dw2.c	(revision 121165)
@@ -636,6 +636,16 @@ execute_stack_op (const unsigned char *o
 	  result = stack[stack_elt - 2];
 	  break;
 
+	case DW_OP_swap:
+	  {
+	    _Unwind_Word t;
+	    gcc_assert (stack_elt >= 2);
+	    t = stack[stack_elt - 1];
+	    stack[stack_elt - 1] = stack[stack_elt - 2];
+	    stack[stack_elt - 2] = t;
+	    goto no_push;
+	  }
+
 	case DW_OP_rot:
 	  {
 	    _Unwind_Word t1, t2, t3;