LINUX.ORG.RU

gcc-3.2.2 - abs_error patch - проверьте пожалуйста !


0

0

вот сам сделал патч для gcc abs error;
вроде собирает всё нормально и проверку проходит, но
просьба к знающим людям, проверьте правильность патча
с точки зрения C и в контексте fold-const.c для gcc-3.2.2
--- gcc/fold-const.c.orig	2002-12-04 19:28:25.000000000 +0000
+++ gcc/fold-const.c	2007-11-25 10:06:20.000000000 +0000
@@ -4639,12 +4639,12 @@
 	 to change the code.  */
       if (tree_int_cst_sgn (op1) < 0 || tree_int_cst_sgn (c) < 0)
 	{
-	  if (code == CEIL_DIV_EXPR)
-	    code = FLOOR_DIV_EXPR;
-	  else if (code == FLOOR_DIV_EXPR)
-	    code = CEIL_DIV_EXPR;
-	  else if (code != MULT_EXPR
-		   && code != CEIL_MOD_EXPR && code != FLOOR_MOD_EXPR)
+//	  if (code == CEIL_DIV_EXPR)
+//	    code = FLOOR_DIV_EXPR;
+//	  else if (code == FLOOR_DIV_EXPR)
+//	    code = CEIL_DIV_EXPR;
+//	  else if (code != MULT_EXPR
+//		   && code != CEIL_MOD_EXPR && code != FLOOR_MOD_EXPR)
 	    break;
 	}
 

ps
ещё было
@@ -4559,10 +4559,10 @@
 	  && (t2 = extract_muldiv (op1, c, code, wide_type)) != 0)
 	{
 	  if (tree_int_cst_sgn (c) < 0)
-	    tcode = (tcode == MIN_EXPR ? MAX_EXPR : MIN_EXPR);
-
-	  return fold (build (tcode, ctype, convert (ctype, t1),
-			      convert (ctype, t2)));
+//	    tcode = (tcode == MIN_EXPR ? MAX_EXPR : MIN_EXPR);
+	    break;
+//	  return fold (build (tcode, ctype, convert (ctype, t1),
+//			      convert (ctype, t2)));
 	}
       break;

но это не помогало - оставил как было в оригинальном fold-const.c

botrops-schlegelii ★★
() автор топика
Ответ на: комментарий от stassats

я имел ввиду
правильность синтаксиса
1)с точки зрения С
2)с точки зрения fold-const.c для gcc-3.2.2

botrops-schlegelii ★★
() автор топика

тесты прилагаются к gcc,
см. в исходниках gcc/testsuite,
если все тесты будут пройдены успешно, то возможно это правильных патч.

fghj ★★★★★
()
Ответ на: комментарий от botrops-schlegelii

>>//

уверен насчёт c99 ? я бы поставил всё же /* */

alex_custov ★★★★★
()
Ответ на: комментарий от anonymous

>>Сточки зрения С комментарии в стиле C++ не приветствуются.

поправочка - С точки зрения С89 ;)

alex_custov ★★★★★
()
Ответ на: комментарий от fghj

>тесты прилагаются к gcc,
попробую
>// на /*
заменю
зы
всем спасибо

botrops-schlegelii ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.