Re: [PATCH 9j] testsuite: add x86_64-specific files

2017-01-16 Thread Jeff Law

On 01/09/2017 07:38 PM, David Malcolm wrote:

A collection of test cases, capturing the state of various
functions at various places within the pass list, and verifying
that we can restart at various passes.

gcc/testsuite/ChangeLog:
* gcc.dg/rtl/x86_64/dfinit.c: New test case.
* gcc.dg/rtl/x86_64/different-structs.c: New test case.
* gcc.dg/rtl/x86_64/final.c: New test case.
* gcc.dg/rtl/x86_64/into-cfglayout.c: New test case.
* gcc.dg/rtl/x86_64/ira.c: New test case.
* gcc.dg/rtl/x86_64/pro_and_epilogue.c: New test case.
* gcc.dg/rtl/x86_64/test-multiple-fns.c: New test case.
* gcc.dg/rtl/x86_64/test-return-const.c.after-expand.c: New test case.
* gcc.dg/rtl/x86_64/test-return-const.c.before-fwprop.c: New test case.
* gcc.dg/rtl/x86_64/test-rtl.c: New test case.
* gcc.dg/rtl/x86_64/test_1.h: New file.
* gcc.dg/rtl/x86_64/times-two.c.after-expand.c: New test case.
* gcc.dg/rtl/x86_64/times-two.c.before-df.c: New test case.
* gcc.dg/rtl/x86_64/times-two.h: New file.
* gcc.dg/rtl/x86_64/vregs.c: New test case.

This all looks fairly reasonable.

jeff



[PATCH 9j] testsuite: add x86_64-specific files

2017-01-09 Thread David Malcolm
A collection of test cases, capturing the state of various
functions at various places within the pass list, and verifying
that we can restart at various passes.

gcc/testsuite/ChangeLog:
* gcc.dg/rtl/x86_64/dfinit.c: New test case.
* gcc.dg/rtl/x86_64/different-structs.c: New test case.
* gcc.dg/rtl/x86_64/final.c: New test case.
* gcc.dg/rtl/x86_64/into-cfglayout.c: New test case.
* gcc.dg/rtl/x86_64/ira.c: New test case.
* gcc.dg/rtl/x86_64/pro_and_epilogue.c: New test case.
* gcc.dg/rtl/x86_64/test-multiple-fns.c: New test case.
* gcc.dg/rtl/x86_64/test-return-const.c.after-expand.c: New test case.
* gcc.dg/rtl/x86_64/test-return-const.c.before-fwprop.c: New test case.
* gcc.dg/rtl/x86_64/test-rtl.c: New test case.
* gcc.dg/rtl/x86_64/test_1.h: New file.
* gcc.dg/rtl/x86_64/times-two.c.after-expand.c: New test case.
* gcc.dg/rtl/x86_64/times-two.c.before-df.c: New test case.
* gcc.dg/rtl/x86_64/times-two.h: New file.
* gcc.dg/rtl/x86_64/vregs.c: New test case.
---
 gcc/testsuite/gcc.dg/rtl/x86_64/dfinit.c   | 116 ++
 .../gcc.dg/rtl/x86_64/different-structs.c  |  81 +
 gcc/testsuite/gcc.dg/rtl/x86_64/final.c| 133 +
 gcc/testsuite/gcc.dg/rtl/x86_64/into-cfglayout.c   | 117 ++
 gcc/testsuite/gcc.dg/rtl/x86_64/ira.c  | 111 +
 gcc/testsuite/gcc.dg/rtl/x86_64/pro_and_epilogue.c | 110 +
 .../gcc.dg/rtl/x86_64/test-multiple-fns.c  | 105 
 .../rtl/x86_64/test-return-const.c.after-expand.c  |  39 ++
 .../rtl/x86_64/test-return-const.c.before-fwprop.c |  42 +++
 gcc/testsuite/gcc.dg/rtl/x86_64/test-rtl.c | 101 
 gcc/testsuite/gcc.dg/rtl/x86_64/test_1.h   |  16 +++
 .../gcc.dg/rtl/x86_64/times-two.c.after-expand.c   |  70 +++
 .../gcc.dg/rtl/x86_64/times-two.c.before-df.c  |  54 +
 gcc/testsuite/gcc.dg/rtl/x86_64/times-two.h|  22 
 gcc/testsuite/gcc.dg/rtl/x86_64/vregs.c| 112 +
 15 files changed, 1229 insertions(+)
 create mode 100644 gcc/testsuite/gcc.dg/rtl/x86_64/dfinit.c
 create mode 100644 gcc/testsuite/gcc.dg/rtl/x86_64/different-structs.c
 create mode 100644 gcc/testsuite/gcc.dg/rtl/x86_64/final.c
 create mode 100644 gcc/testsuite/gcc.dg/rtl/x86_64/into-cfglayout.c
 create mode 100644 gcc/testsuite/gcc.dg/rtl/x86_64/ira.c
 create mode 100644 gcc/testsuite/gcc.dg/rtl/x86_64/pro_and_epilogue.c
 create mode 100644 gcc/testsuite/gcc.dg/rtl/x86_64/test-multiple-fns.c
 create mode 100644 
gcc/testsuite/gcc.dg/rtl/x86_64/test-return-const.c.after-expand.c
 create mode 100644 
gcc/testsuite/gcc.dg/rtl/x86_64/test-return-const.c.before-fwprop.c
 create mode 100644 gcc/testsuite/gcc.dg/rtl/x86_64/test-rtl.c
 create mode 100644 gcc/testsuite/gcc.dg/rtl/x86_64/test_1.h
 create mode 100644 gcc/testsuite/gcc.dg/rtl/x86_64/times-two.c.after-expand.c
 create mode 100644 gcc/testsuite/gcc.dg/rtl/x86_64/times-two.c.before-df.c
 create mode 100644 gcc/testsuite/gcc.dg/rtl/x86_64/times-two.h
 create mode 100644 gcc/testsuite/gcc.dg/rtl/x86_64/vregs.c

diff --git a/gcc/testsuite/gcc.dg/rtl/x86_64/dfinit.c 
b/gcc/testsuite/gcc.dg/rtl/x86_64/dfinit.c
new file mode 100644
index 000..3425b97
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/rtl/x86_64/dfinit.c
@@ -0,0 +1,116 @@
+/* { dg-do run { target i?86-*-* x86_64-*-* } } */
+/* { dg-options "-fdump-rtl-dfinit" } */
+
+#include "test_1.h"
+
+/* Lightly-modified dump of test.c.261r.split1 for x86_64.  */
+
+int __RTL (startwith ("no-opt dfinit")) test_1 (int i, int j, int k)
+{
+(function "test_1"
+  (param "i"
+(DECL_RTL (mem/c:SI (plus:DI (reg/f:DI frame)
+(const_int -4)) [1 i+0 S4 A32]))
+(DECL_RTL_INCOMING (reg:SI di [ i ])))
+  (param "j"
+(DECL_RTL (mem/c:SI (plus:DI (reg/f:DI frame)
+(const_int -8)) [1 j+0 S4 A32]))
+(DECL_RTL_INCOMING (reg:SI si [ j ])))
+  (param "k"
+(DECL_RTL (mem/c:SI (plus:DI (reg/f:DI frame)
+(const_int -12)) [1 k+0 S4 A32]))
+(DECL_RTL_INCOMING (reg:SI dx [ k ])))
+  (insn-chain
+(cnote 1 NOTE_INSN_DELETED)
+(block 2
+  (edge-from entry (flags "FALLTHRU"))
+  (cnote 6 [bb 2] NOTE_INSN_BASIC_BLOCK)
+  (cinsn 2 (set (mem/c:SI (plus:DI (reg/f:DI frame)
+(const_int -4)) [1 i+0 S4 A32])
+(reg:SI di [ i ])) 
"../../src/gcc/testsuite/gcc.dg/rtl/test.c":2)
+  (cinsn 3 (set (mem/c:SI (plus:DI (reg/f:DI frame)
+(const_int -8)) [1 j+0 S4 A32])
+(reg:SI si [ j ])) 
"../../src/gcc/testsuite/gcc.dg/rtl/test.c":2)
+  (cinsn 4 (set (mem/c:SI (plus:DI (reg/f:DI frame)
+(const_int -12)) [1 k+0 S4 A32])
+(reg:SI dx [ k ])) 
"../../src/gcc/testsuite/gcc.dg/rtl/test.c":2)
+