[Bug target/77850] FAIL: gcc.dg/compat/scalar-by-value-4 c_compat_x_tst.o-c_compat_y_tst.o execute

2017-11-08 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77850

Segher Boessenkool  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #8 from Segher Boessenkool  ---
Oh I cannot read.  Fixed everywhere.

[Bug target/77850] FAIL: gcc.dg/compat/scalar-by-value-4 c_compat_x_tst.o-c_compat_y_tst.o execute

2017-11-08 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77850

Segher Boessenkool  changed:

   What|Removed |Added

 CC||segher at gcc dot gnu.org

--- Comment #7 from Segher Boessenkool  ---
Fixed everywhere for powerpc.  Does hppa still need backports?

[Bug target/77850] FAIL: gcc.dg/compat/scalar-by-value-4 c_compat_x_tst.o-c_compat_y_tst.o execute

2017-06-27 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77850

--- Comment #6 from Segher Boessenkool  ---
Author: segher
Date: Tue Jun 27 18:24:51 2017
New Revision: 249707

URL: https://gcc.gnu.org/viewcvs?rev=249707=gcc=rev
Log:
Backports from trunk:

2016-08-15  Segher Boessenkool  
PR rtl-optimization/73650
* lra-constraints.c (simple_move_p): If the insn is multiple_sets
it is not a simple move.

2017-01-20  Segher Boessenkool  
PR target/61729
PR target/77850
* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Adjust address to
read from, for big endian.

2017-04-12  Segher Boessenkool  
PR target/80382
* config/rs6000/sync.md (atomic_load, atomic_store
PR middle-end/80692
* real.c (do_compare): Give decimal_do_compare preference over
comparing just the signs.

2017-05-31  Segher Boessenkool  
PR target/80618
* config/rs6000/vector.md (*vector_uneq): Write the nor in the
splitter result in the canonical way.

2017-06-09  Segher Boessenkool  
PR target/80966
* config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Assert that
gen_add3_insn did not fail.
* config/rs6000/rs6000.md (add3): If asked to add a constant to
r0, construct that number in a temporary reg and add that reg to r0.
If asked to put the result in r0 as well, fail.

2017-06-23  Segher Boessenkool  
PR middle-end/80902
* builtins.c (expand_builtin_atomic_fetch_op): If emitting code after
a call, force the call to not be a tail call.

gcc/testsuite/
Backports from trunk:

2017-05-17  Segher Boessenkool  
PR middle-end/80692
* gcc.c-torture/execute/pr80692.c: New testcase.

2017-06-09  Segher Boessenkool  
PR target/80966
* gcc.target/powerpc/stack-limit.c: New testcase.

Added:
branches/gcc-5-branch/gcc/testsuite/gcc.c-torture/execute/pr80692.c
branches/gcc-5-branch/gcc/testsuite/gcc.target/powerpc/stack-limit.c
Modified:
branches/gcc-5-branch/gcc/ChangeLog
branches/gcc-5-branch/gcc/builtins.c
branches/gcc-5-branch/gcc/config/rs6000/rs6000.c
branches/gcc-5-branch/gcc/config/rs6000/rs6000.md
branches/gcc-5-branch/gcc/config/rs6000/sync.md
branches/gcc-5-branch/gcc/config/rs6000/vector.md
branches/gcc-5-branch/gcc/lra-constraints.c
branches/gcc-5-branch/gcc/real.c
branches/gcc-5-branch/gcc/testsuite/ChangeLog

[Bug target/77850] FAIL: gcc.dg/compat/scalar-by-value-4 c_compat_x_tst.o-c_compat_y_tst.o execute

2017-06-27 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77850

--- Comment #5 from Segher Boessenkool  ---
Author: segher
Date: Tue Jun 27 17:11:01 2017
New Revision: 249700

URL: https://gcc.gnu.org/viewcvs?rev=249700=gcc=rev
Log:
Backports from trunk:

2016-08-15  Segher Boessenkool  
PR rtl-optimization/73650
* lra-constraints.c (simple_move_p): If the insn is multiple_sets
it is not a simple move.

2017-01-20  Segher Boessenkool  
PR target/61729
PR target/77850
* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Adjust address to
read from, for big endian.

2017-04-04  Segher Boessenkool  
PR rtl-optimization/60818
* simplify-rtx.c (simplify_binary_operation_1): Do not replace
a compare of comparisons with the thing compared if this results
in a different machine mode.

2017-04-12  Segher Boessenkool  
PR target/80382
* config/rs6000/sync.md (atomic_load, atomic_store
PR rtl-optimization/80429
* ira.c (split_live_ranges_for_shrink_wrap): Don't split regs that
are only used in debug insns.

2017-05-17  Segher Boessenkool  
PR middle-end/80692
* real.c (do_compare): Give decimal_do_compare preference over
comparing just the signs.

2017-05-31  Segher Boessenkool  
PR target/80618
* config/rs6000/vector.md (*vector_uneq): Write the nor in the
splitter result in the canonical way.

2017-06-09  Segher Boessenkool  
PR target/80966
* config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Assert that
gen_add3_insn did not fail.
* config/rs6000/rs6000.md (add3): If asked to add a constant to
r0, construct that number in a temporary reg and add that reg to r0.
If asked to put the result in r0 as well, fail.

2017-06-23  Segher Boessenkool  
PR middle-end/80902
* builtins.c (expand_builtin_atomic_fetch_op): If emitting code after
a call, force the call to not be a tail call.

gcc/testsuite/
Backports from trunk:

2017-04-04  Segher Boessenkool  
PR rtl-optimization/60818
* gcc.c-torture/compile/pr60818.c: New testcase.

2017-05-17  Segher Boessenkool  
PR middle-end/80692
* gcc.c-torture/execute/pr80692.c: New testcase.

2017-06-09  Segher Boessenkool  
PR target/80966
* gcc.target/powerpc/stack-limit.c: New testcase.

Added:
branches/gcc-6-branch/gcc/testsuite/gcc.c-torture/compile/pr60818.c
branches/gcc-6-branch/gcc/testsuite/gcc.c-torture/execute/pr80692.c
branches/gcc-6-branch/gcc/testsuite/gcc.target/powerpc/stack-limit.c
Modified:
branches/gcc-6-branch/gcc/ChangeLog
branches/gcc-6-branch/gcc/builtins.c
branches/gcc-6-branch/gcc/config/rs6000/rs6000.c
branches/gcc-6-branch/gcc/config/rs6000/rs6000.md
branches/gcc-6-branch/gcc/config/rs6000/sync.md
branches/gcc-6-branch/gcc/config/rs6000/vector.md
branches/gcc-6-branch/gcc/ira.c
branches/gcc-6-branch/gcc/lra-constraints.c
branches/gcc-6-branch/gcc/real.c
branches/gcc-6-branch/gcc/simplify-rtx.c
branches/gcc-6-branch/gcc/testsuite/ChangeLog

[Bug target/77850] FAIL: gcc.dg/compat/scalar-by-value-4 c_compat_x_tst.o-c_compat_y_tst.o execute

2017-03-06 Thread danglin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77850

--- Comment #4 from John David Anglin  ---
Fixed by following commits on hppa64-*-*:
https://gcc.gnu.org/ml/gcc-cvs/2017-03/msg00134.html
https://gcc.gnu.org/ml/gcc-cvs/2017-03/msg00136.html
https://gcc.gnu.org/ml/gcc-cvs/2017-03/msg00137.html

[Bug target/77850] FAIL: gcc.dg/compat/scalar-by-value-4 c_compat_x_tst.o-c_compat_y_tst.o execute

2017-03-04 Thread danglin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77850

--- Comment #3 from John David Anglin  ---
We currently use genetic code in hppa_gimplify_va_arg_expr:

static tree
hppa_gimplify_va_arg_expr (tree valist, tree type, gimple_seq *pre_p,
   gimple_seq *post_p)
{
  if (TARGET_64BIT)
{
  /* Args grow upward.  We can use the generic routines.  */
  return std_gimplify_va_arg_expr (valist, type, pre_p, post_p);
}

[Bug target/77850] FAIL: gcc.dg/compat/scalar-by-value-4 c_compat_x_tst.o-c_compat_y_tst.o execute

2017-03-04 Thread danglin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77850

John David Anglin  changed:

   What|Removed |Added

 Target|powerpc-*-* |powerpc-*-* hppa64-*-*
 CC||danglin at gcc dot gnu.org

--- Comment #2 from John David Anglin  ---
Same on hppa64-hp-hpux11.11:

# ./gcc-dg-compat-scalar-by-value-4-01.exe
cc init: 
cc test: 
cc testva:
F
FF
FFF

F
FF
FFF

F
FF
FFF

F
FF
FFF

cc test2: 
cs init: 
cs test: 
cs testva:
F
FF
FFF

F
FF
FFF

F
FF
FFF

F
FF
FFF

cs test2: 
cf init: 
cf test: 
cf testva:
.
..
...

.
..
...

.
..
...

.
..
...

cf test2: 
failed
ABORT instruction (core dumped)

[Bug target/77850] FAIL: gcc.dg/compat/scalar-by-value-4 c_compat_x_tst.o-c_compat_y_tst.o execute

2017-01-20 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77850

--- Comment #1 from Segher Boessenkool  ---
Author: segher
Date: Sat Jan 21 03:11:49 2017
New Revision: 244740

URL: https://gcc.gnu.org/viewcvs?rev=244740=gcc=rev
Log:
rs6000: Small varargs for BE SVR4 (PR61729, PR77850)

The varargs code for SVR4 puts all (integer) arguments in 4-byte slots.
When it then reads an item from there as something not a multiple of 4
bytes, it needs to adjust the address if big endian.  We didn't yet do
that.

This fixes the g++.dg/abi/scoped1.C, gcc.dg/compat/scalar-by-value-4,
and gcc.dg/compat/scalar-return-4 testcases.


PR target/61729
PR target/77850
* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Adjust address to
read from, for big endian.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/rs6000/rs6000.c