From 76dd203e1b51267cbb227a5e2ffab5f20a56f62d Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Wed, 22 Feb 2017 15:00:39 +0000 Subject: re PR middle-end/79673 (GIMPLE verification fails when compiling code with __seg_gs) 2017-02-22 Richard Biener PR tree-optimization/79673 * tree-ssa-pre.c (compute_avail): Use wide_int_to_tree to convert the [TARGET_]MEM_REF offset INTEGER_CST, scrapping off irrelevant address-space qualifiers and avoiding a ADDR_SPACE_CONVERT_EXPR from fold_convert. * gcc.target/i386/pr79673.c: New testcase. From-SVN: r245649 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.target/i386/pr79673.c | 12 ++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 gcc/testsuite/gcc.target/i386/pr79673.c (limited to 'gcc/testsuite') diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index af56482..5ba7d83 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2017-02-22 Richard Biener + PR tree-optimization/79673 + * gcc.target/i386/pr79673.c: New testcase. + +2017-02-22 Richard Biener + PR tree-optimization/79666 * gcc.dg/torture/pr79666.c: New testcase. diff --git a/gcc/testsuite/gcc.target/i386/pr79673.c b/gcc/testsuite/gcc.target/i386/pr79673.c new file mode 100644 index 0000000..2ca667b --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr79673.c @@ -0,0 +1,12 @@ +/* { dg-do compile } */ +/* { dg-options "-O2" } */ + +void used(double x); +void usel(long x); +void test(int c) +{ + if (c) + used(*((double __seg_gs *) 0)); + else + usel(*((long __seg_gs *) 0)); +} -- cgit v1.1