From: aph Date: Tue, 20 Mar 2007 12:45:19 +0000 (+0000) Subject: 2007-03-19 Andrew Haley X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2b9f2e4688aa7f44042aee897b98f56beb74d3dc;p=thirdparty%2Fgcc.git 2007-03-19 Andrew Haley PR tree-optimization/31264 * tree-vrp.c (register_edge_assert_for_1): Don't look though VIEW_CONVERT_EXPRs. 2007-03-20 Andrew Haley * testsuite/libjava.lang/PR31264.java: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@123085 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 43a8abfd5968..18a85ec79c82 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2007-03-19 Andrew Haley + + PR tree-optimization/31264 + * tree-vrp.c (register_edge_assert_for_1): Don't look though + VIEW_CONVERT_EXPRs. + 2007-03-19 Paolo Bonzini PR rtl-optimization/30907 diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c index b137628c9754..2fad7790e6f7 100644 --- a/gcc/tree-vrp.c +++ b/gcc/tree-vrp.c @@ -3485,7 +3485,6 @@ register_edge_assert_for_1 (tree op, enum tree_code code, } else if (TREE_CODE (rhs) == NOP_EXPR || TREE_CODE (rhs) == CONVERT_EXPR - || TREE_CODE (rhs) == VIEW_CONVERT_EXPR || TREE_CODE (rhs) == NON_LVALUE_EXPR) { /* Recurse through the type conversion. */ diff --git a/libjava/ChangeLog b/libjava/ChangeLog index edf374ba8746..03ac64e880e0 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,7 @@ +2007-03-20 Andrew Haley + + * testsuite/libjava.lang/PR31264.java: New test. + 2007-03-14 Jakub Jelinek * Makefile.am (AM_MAKEFLAGS): Pass through mandir. diff --git a/libjava/testsuite/libjava.lang/PR31264.jar b/libjava/testsuite/libjava.lang/PR31264.jar new file mode 100644 index 000000000000..26731c83b896 Binary files /dev/null and b/libjava/testsuite/libjava.lang/PR31264.jar differ diff --git a/libjava/testsuite/libjava.lang/PR31264.java b/libjava/testsuite/libjava.lang/PR31264.java new file mode 100644 index 000000000000..5c0e85f010e1 --- /dev/null +++ b/libjava/testsuite/libjava.lang/PR31264.java @@ -0,0 +1,28 @@ +/* + * Javolution - Java(TM) Solution for Real-Time and Embedded Systems + * Copyright (C) 2006 - Javolution (http://javolution.org/) + * All rights reserved. + * + * Permission to use, copy, modify, and distribute this software is + * freely granted, provided that this notice is preserved. + */ + +public final class PR31264 +{ + public static long fubar(double d, int n) + { + long bits = Double.doubleToRawLongBits(d); + int exp = ((int)(bits >> 52)) & 0x7FF; + long m = bits & 0x000fffffffffffffL; + if (exp == 0) + { + if (m == 0) return 0L; + return fubar(d * 18014398509481984L, n - 54); // 2^54 Exact. + } + return m; + } + + public static void main(String[] argv) + { + } +} diff --git a/libjava/testsuite/libjava.lang/PR31264.out b/libjava/testsuite/libjava.lang/PR31264.out new file mode 100644 index 000000000000..e69de29bb2d1