public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc(refs/users/meissner/heads/work019)] Update ChangeLog.meissner
@ 2020-09-30 20:04 Michael Meissner
  0 siblings, 0 replies; 8+ messages in thread
From: Michael Meissner @ 2020-09-30 20:04 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:4d8ce69e56572dd7473d40b11e0a4ce74785bd42

commit 4d8ce69e56572dd7473d40b11e0a4ce74785bd42
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Wed Sep 30 16:04:19 2020 -0400

    Update ChangeLog.meissner
    
    gcc/
    2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.
    
    gcc/testsuite/
    2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.

Diff:
---
 gcc/ChangeLog.meissner           | 25 +++++++++++++++++++++++++
 gcc/testsuite/ChangeLog.meissner |  9 +++++++++
 2 files changed, 34 insertions(+)

diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 47ecb6f75b6..50bcc250c4c 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,28 @@
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/rs6000.c (have_compare_and_set_mask): Add IEEE
+	128-bit floating point types.
+	* config/rs6000/rs6000.md (FPMASK): New iterator.
+	(FPMASK2): New iterator.
+	(Fv mode attribute): Add KFmode and TFmode.
+	(mov<FPMASK:mode><FPMASK2:mode>cc_fpmask): Replace
+	mov<SFDF:mode><SFDF2:mode>cc_p9.  Add IEEE 128-bit fp support.
+	(mov<FPMASK:mode><FPMASK2:mode>cc_invert_fpmask): Replace
+	mov<SFDF:mode><SFDF2:mode>cc_invert_p9.  Add IEEE 128-bit fp
+	support.
+	(fpmask<mode>): Add IEEE 128-bit fp support.  Enable generator to
+	build te RTL.
+	(xxsel<mode>): Add IEEE 128-bit fp support.  Enable generator to
+	build te RTL.
+
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/rs6000.c (rs6000_emit_minmax): Add support for ISA
+	3.1 IEEE 128-bit floating point xsmaxcqp and xsmincqp instructions.
+	* config/rs6000/rs60000.h (FLOAT128_MIN_MAX_FPMASK_P): New macro.
+	* config/rs6000/rs6000.md (s<minmax><mode>3): Add support for the
+	ISA 3.1 IEEE 128-bit minimum and maximum instructions.
+
 2020-09-30   Michael Meissner  <meissner@linux.ibm.com>
 
 	Clone branch
diff --git a/gcc/testsuite/ChangeLog.meissner b/gcc/testsuite/ChangeLog.meissner
index 47ecb6f75b6..b229e3830ad 100644
--- a/gcc/testsuite/ChangeLog.meissner
+++ b/gcc/testsuite/ChangeLog.meissner
@@ -1,3 +1,12 @@
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* gcc.target/powerpc/float128-cmove.c: New test.
+	* gcc.target/powerpc/float128-minmax-3.c: New test.
+
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* gcc.target/powerpc/float128-minmax-2.c: New test.
+
 2020-09-30   Michael Meissner  <meissner@linux.ibm.com>
 
 	Clone branch


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gcc(refs/users/meissner/heads/work019)] Update ChangeLog.meissner.
@ 2020-10-08  5:25 Michael Meissner
  0 siblings, 0 replies; 8+ messages in thread
From: Michael Meissner @ 2020-10-08  5:25 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:6e8ede0cb362a5f1233746d91a88f80098b2003d

commit 6e8ede0cb362a5f1233746d91a88f80098b2003d
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Thu Oct 8 01:24:07 2020 -0400

    Update ChangeLog.meissner.
    
    gcc/
    2020-10-08  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.

Diff:
---
 gcc/ChangeLog.meissner | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 0a8ad569b60..d06f5a752ae 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,9 @@
+2020-10-08  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/rs6000.c (rs6000_mangle_decl_assembler_name): Use
+	__ieee754_<name>l instead of <name>f128 for the IEEE 128-bit
+	built-in functions.
+
 2020-09-09  Aaron Sawdey  <acsawdey@linux.ibm.com>
 
 	* config/rs6000/rs6000-modes.def (POImode): Change precision.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gcc(refs/users/meissner/heads/work019)] Update ChangeLog.meissner.
@ 2020-10-05 22:47 Michael Meissner
  0 siblings, 0 replies; 8+ messages in thread
From: Michael Meissner @ 2020-10-05 22:47 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:86b35df775267b91971f42de2e2e3fa52ebdbb3f

commit 86b35df775267b91971f42de2e2e3fa52ebdbb3f
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Mon Oct 5 18:46:04 2020 -0400

    Update ChangeLog.meissner.
    
    gcc/
    2020-10-05  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.

Diff:
---
 gcc/ChangeLog.meissner | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index dfc64330a08..0a8ad569b60 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,8 @@
+2020-09-09  Aaron Sawdey  <acsawdey@linux.ibm.com>
+
+	* config/rs6000/rs6000-modes.def (POImode): Change precision.
+	* expmed.c (extract_low_bits): Check precision.
+
 2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
 
 	* config/rs6000/rs6000-call.c (altivec_overloaded_builtins): Add


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gcc(refs/users/meissner/heads/work019)] Update ChangeLog.meissner.
@ 2020-10-01  3:55 Michael Meissner
  0 siblings, 0 replies; 8+ messages in thread
From: Michael Meissner @ 2020-10-01  3:55 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:625c2ed851051389a16d6a44d1dc1e688056e45d

commit 625c2ed851051389a16d6a44d1dc1e688056e45d
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Wed Sep 30 23:55:14 2020 -0400

    Update ChangeLog.meissner.
    
    gcc/
    2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.
    
    libgcc/
    2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.

Diff:
---
 gcc/ChangeLog.meissner    | 21 ---------------------
 libgcc/ChangeLog.meissner | 11 -----------
 2 files changed, 32 deletions(-)

diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 19988498245..dfc64330a08 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,24 +1,3 @@
-2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
-
-	Undo selected parts of the last patch:
-	* config/rs6000/rs6000-call.c (rs6000_init_builtins): Update
-	comment about how the internal types and keywords for the 128-bit
-	floating point types are created.
-	(rs6000_floatn_mode): Always use KFmode for _Float128 and
-	_Float64x, even if long double uses the IEEE 128-bit
-	representation.
-
-2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
-
-	* config/rs6000/rs6000-call.c (rs6000_init_builtins): Update
-	comment about how the internal types and keywords for the 128-bit
-	floating point types are created.
-	* config/rs6000/rs6000.c (init_float128_ieee): Use a different
-	name for IEEE 128-bit long double complex multiply and divide.
-	(rs6000_floatn_mode): Always use KFmode for _Float128 and
-	_Float64x, even if long double uses the IEEE 128-bit
-	representation.
-
 2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
 
 	* config/rs6000/rs6000-call.c (altivec_overloaded_builtins): Add
diff --git a/libgcc/ChangeLog.meissner b/libgcc/ChangeLog.meissner
index c56314f9b8d..1d7989bacbc 100644
--- a/libgcc/ChangeLog.meissner
+++ b/libgcc/ChangeLog.meissner
@@ -1,14 +1,3 @@
-2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
-
-	* config/rs6000/_divkc3.c (__divkc3x): Provide alias with
-	alternate name.
-	* config/rs6000/_mulkc3.c (__mulkc3x): Provide alias with
-	alternate name.
-	* config/rs6000/float128-ifunc.c (Add alternate aliases __divkc3x
-	and __mulkc3x).
-	* config/rs6000/quad-float128.c (__divkc3x): New declaration.
-	(__mulkc3x): New declaration.
-
 2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
 
 	* config/rs6000/ibm-ldouble.c (pack_ldouble): Use


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gcc(refs/users/meissner/heads/work019)] Update ChangeLog.meissner.
@ 2020-10-01  3:36 Michael Meissner
  0 siblings, 0 replies; 8+ messages in thread
From: Michael Meissner @ 2020-10-01  3:36 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:6ea9776aa78851ff946d07f74b407c5ac4ce1c1e

commit 6ea9776aa78851ff946d07f74b407c5ac4ce1c1e
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Wed Sep 30 23:36:13 2020 -0400

    Update ChangeLog.meissner.
    
    gcc/
    2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.

Diff:
---
 gcc/ChangeLog.meissner | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index b954ff111e8..19988498245 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,13 @@
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	Undo selected parts of the last patch:
+	* config/rs6000/rs6000-call.c (rs6000_init_builtins): Update
+	comment about how the internal types and keywords for the 128-bit
+	floating point types are created.
+	(rs6000_floatn_mode): Always use KFmode for _Float128 and
+	_Float64x, even if long double uses the IEEE 128-bit
+	representation.
+
 2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
 
 	* config/rs6000/rs6000-call.c (rs6000_init_builtins): Update


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gcc(refs/users/meissner/heads/work019)] Update ChangeLog.meissner.
@ 2020-10-01  1:44 Michael Meissner
  0 siblings, 0 replies; 8+ messages in thread
From: Michael Meissner @ 2020-10-01  1:44 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:4599d54abd7532f3dd47a0070be5c47be65e9fa4

commit 4599d54abd7532f3dd47a0070be5c47be65e9fa4
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Wed Sep 30 21:43:37 2020 -0400

    Update ChangeLog.meissner.
    
    gcc/
    2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.
    
    gcc/testsuite/
    2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.
    
    libgcc/
    2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.

Diff:
---
 gcc/ChangeLog.meissner           | 47 ++++++++++++++++++++++++++++++++++++++++
 gcc/testsuite/ChangeLog.meissner | 35 ++++++++++++++++++++++++++++++
 libgcc/ChangeLog.meissner        | 31 ++++++++++++++++++++++++++
 3 files changed, 113 insertions(+)

diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 469cd079b42..b954ff111e8 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,50 @@
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/rs6000-call.c (rs6000_init_builtins): Update
+	comment about how the internal types and keywords for the 128-bit
+	floating point types are created.
+	* config/rs6000/rs6000.c (init_float128_ieee): Use a different
+	name for IEEE 128-bit long double complex multiply and divide.
+	(rs6000_floatn_mode): Always use KFmode for _Float128 and
+	_Float64x, even if long double uses the IEEE 128-bit
+	representation.
+
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/rs6000-call.c (altivec_overloaded_builtins): Add
+	built-in functions for long double built-ins that use IEEE
+	128-bit.
+	(rs6000_expand_builtin): Change the KF IEEE 128-bit comparison
+	insns to TF if long double is IEEE 128-bit.
+	* config/rs6000/rs6000-builtin.def (scalar_extract_exptf): Add
+	support for long double being IEEE 128-bit built-in functions.
+	(scalar_extract_sigtf): Likewise.
+	(scalar_test_neg_tf): Likewise.
+	(scalar_insert_exp_tf): Likewise.
+	(scalar_insert_exp_tfp): Likewise.
+	(scalar_cmp_exp_tf_gt): Likewise.
+	(scalar_cmp_exp_tf_lt): Likewise.
+	(scalar_cmp_exp_tf_eq): Likewise.
+	(scalar_cmp_exp_tf_unordered): Likewise.
+	(scalar_test_data_class_tf): Likewise.
+
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): If long
+	double is IEEE-128 map the nanq built-in functions to the long
+	double function, not the f128 function.
+
+2020-09-18  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/rs6000.c (rs6000_invalid_binary_op): Update error
+	messages about mixing IBM long double and IEEE 128-bit.
+
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/rs6000.c (rs6000_mangle_decl_assembler_name): Add
+	support for mapping built-in function names for long double
+	built-in functions if long double is IEEE 128-bit.
+
 2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
 
 	PR target/81594
diff --git a/gcc/testsuite/ChangeLog.meissner b/gcc/testsuite/ChangeLog.meissner
index 6d7d0b25013..7d87c646638 100644
--- a/gcc/testsuite/ChangeLog.meissner
+++ b/gcc/testsuite/ChangeLog.meissner
@@ -1,3 +1,38 @@
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* gcc.target/powerpc/float128-cmp2-runnable.c: Use __float128
+	keyword instead of __ieee128.
+	* gcc.target/powerpc/pr92796.c: Use __float128 keyword instead of
+	__ieee128.
+
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* c-c++-common/dfp/convert-bfp-11.c: If long double is IEEE
+	128-bit, skip the test.
+	* gcc.dg/nextafter-2.c: On PowerPC, if long double is IEEE
+	128-bit, include math.h to get the built-in mapped correctly.
+	* gcc.target/powerpc/pr70117.c: Add support for long double being
+	IEEE 128-bit.
+
+2020-09-18  Michael Meissner  <meissner@linux.ibm.com>
+
+	* gcc.target/powerpc/bfp/scalar-extract-exp-4.c: Update failure
+	messages.
+	* gcc.target/powerpc/bfp/scalar-extract-sig-4.c: Update failure
+	messages.
+	* gcc.target/powerpc/bfp/scalar-test-data-class-11.c: Update
+	failure messages.
+	* gcc.target/powerpc/bfp/scalar-test-neg-5.c: Update failure
+	messages.
+	* gcc.target/powerpc/float128-mix-2.c: New test.
+	* gcc.target/powerpc/float128-mix-3.c: New test.
+	* gcc.target/powerpc/float128-mix.c: Update failure messages.
+
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* gcc.target/powerpc/float128-longdouble-math.c: New test.
+	* gcc.target/powerpc/float128-longdouble-stdio.c: New test.
+
 2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
 
 	PR target/81594
diff --git a/libgcc/ChangeLog.meissner b/libgcc/ChangeLog.meissner
index 47ecb6f75b6..c56314f9b8d 100644
--- a/libgcc/ChangeLog.meissner
+++ b/libgcc/ChangeLog.meissner
@@ -1,3 +1,34 @@
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/_divkc3.c (__divkc3x): Provide alias with
+	alternate name.
+	* config/rs6000/_mulkc3.c (__mulkc3x): Provide alias with
+	alternate name.
+	* config/rs6000/float128-ifunc.c (Add alternate aliases __divkc3x
+	and __mulkc3x).
+	* config/rs6000/quad-float128.c (__divkc3x): New declaration.
+	(__mulkc3x): New declaration.
+
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/ibm-ldouble.c (pack_ldouble): Use
+	__builtin_pack_ieee128 if long double is IEEE 128-bit.
+
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/_dd_to_kf.c: New file.
+	* config/rs6000/_kf_to_dd.c: New file.
+	* config/rs6000/_kf_to_sd.c: New file.
+	* config/rs6000/_kf_to_td.c: New file.
+	* config/rs6000/_sd_to_kf.c: New file.
+	* config/rs6000/_td_to_kf.c: New file.
+	* config/rs6000/t-float128: Build __floating conversions to/from
+	Decimal support functions.  By default compile with long double
+	being IBM extended double.
+	* dfp-bit.c: Add support for building the PowerPC _Float128
+	to/from Decimal conversion functions.
+	* dfp-bit.h: Likewise.
+
 2020-09-30   Michael Meissner  <meissner@linux.ibm.com>
 
 	Clone branch


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gcc(refs/users/meissner/heads/work019)] Update ChangeLog.meissner
@ 2020-09-30 20:47 Michael Meissner
  0 siblings, 0 replies; 8+ messages in thread
From: Michael Meissner @ 2020-09-30 20:47 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:78c294b4ffedbcfcd6d93423dcfdbfd1587d233f

commit 78c294b4ffedbcfcd6d93423dcfdbfd1587d233f
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Wed Sep 30 16:47:27 2020 -0400

    Update ChangeLog.meissner
    
    gcc/
    2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.
    
    gcc/testsuite/
    2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.

Diff:
---
 gcc/ChangeLog.meissner           | 7 +++++++
 gcc/testsuite/ChangeLog.meissner | 5 +++++
 2 files changed, 12 insertions(+)

diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 873882fd500..469cd079b42 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,10 @@
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	PR target/81594
+	* config/rs6000/predicates.md (ds_form_memory): New predicate.
+	* config/rs6000/vsx.md (concatv2di_store): New insn.
+	(dupv2di_store): New insn.
+
 2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
 
 	* config/rs6000/pcrel-opt.c (pcrel_opt_store): New function.
diff --git a/gcc/testsuite/ChangeLog.meissner b/gcc/testsuite/ChangeLog.meissner
index c58b261fcd4..6d7d0b25013 100644
--- a/gcc/testsuite/ChangeLog.meissner
+++ b/gcc/testsuite/ChangeLog.meissner
@@ -1,3 +1,8 @@
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	PR target/81594
+	* gcc.target/powerpc/pr81594.c: New test.
+
 2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
 
 	* gcc.target/powerpc/pcrel-opt-inc-di.c: New PCREL_OPT test.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [gcc(refs/users/meissner/heads/work019)] Update ChangeLog.meissner.
@ 2020-09-30 20:10 Michael Meissner
  0 siblings, 0 replies; 8+ messages in thread
From: Michael Meissner @ 2020-09-30 20:10 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:bcd70434353131a6ed7a919cc8983dd284e160f3

commit bcd70434353131a6ed7a919cc8983dd284e160f3
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Wed Sep 30 16:10:14 2020 -0400

    Update ChangeLog.meissner.
    
    gcc/
    2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.
    
    gcc/testsuite/
    2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.

Diff:
---
 gcc/ChangeLog.meissner           | 53 ++++++++++++++++++++++++++++++++++++++++
 gcc/testsuite/ChangeLog.meissner | 18 ++++++++++++++
 2 files changed, 71 insertions(+)

diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 50bcc250c4c..873882fd500 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,56 @@
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/pcrel-opt.c (pcrel_opt_store): New function.
+	(pcrel_opt_address): Add PCREL_OPT support for stores.
+	(pcrel_opt_pass): Print PCREL_OPT store statistics.
+	* config/rs6000/pcrel-opt.md (UNSPEC_PCREL_OPT_ST_ADDR): New
+	unspec.
+	(UNSPEC_PCREL_OPT_ST_RELOC): New unspec.
+	(pcrel_opt_st_addr<mode>): New insns for PCREL_OPT store support.
+	(pcrel_opt_st<mode>, QHSI iterator): New insns for PCREL_OPT store
+	support.
+	(pcrel_opt_stdi): New insn for PCREL_OPT store support.
+	(pcrel_opt_stsf): New insn for PCREL_OPT store support.
+	(pcrel_opt_stdf): New insns for PCREL_OPT store support.
+	(pcrel_opt_st<mode>, PO_VECT iterator):  New insns for PCREL_OPT
+	store support.
+	* config/rs6000/rs6000.c (rs6000_delegitimize_address): Add
+	support for PCREL_OPT store.
+
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config.gcc (powerpc*-*-*): Add pcrel-opt.o.
+	(rs6000*-*-*): Add pcrel-opt.o.
+	* config/rs6000/pcrel-opt.c: New file.
+	* config/rs6000/pcrel-opt.md: New file.
+	* config/rs6000/predicates.md (d_form_memory): New predicate.
+	* config/rs6000/rs6000-cpus.def (OTHER_POWER10_MASKS): Add
+	-mpcrel-opt.
+	(POWERPC_MASKS): Add -mpcrel-opt.
+	* config/rs6000/rs6000-passes.def: Add comment for existing power8
+	swaps pass.  Add PCREL_OPT pass.
+	* config/rs6000/rs6000-protos.h (reg_to_non_prefixed): New
+	declaration.
+	(offsettable_non_prefixed_memory): New declaration.
+	(output_pcrel_opt_reloc): New declaration.
+	(make_pass_pcrel_opt): New declaration.
+	* config/rs6000/rs6000.c (reg_to_non_prefixed): Make function
+	globally visible.
+	(rs6000_option_override_internal): Add support for -mpcrel-opt.
+	(rs6000_delegitimize_address): Add support for the PCREL_OPT
+	addresses.
+	(rs6000_opt_masks): Add -mpcrel-opt.
+	(offsettable_non_prefixed_memory): New helper function.
+	(rs6000_asm_output_opcode): Reset prefixed flag after first use.
+	(output_pcrel_opt_reloc): New function.
+	* config/rs6000/rs6000.md (loads_extern_addr): New insn
+	attribute.
+	(pcrel_extern_addr): Set loads_extern_addr attribute.
+	(toplevel): Include pcrel-opt.md.
+	* config/rs6000/rs6000.opt (-mpcrel-opt): New option.
+	* config/rs6000/t-rs6000 (pcrel-opt.o): Add build rules.
+	(MD_INCLUDES): Add pcrel-opt.md
+
 2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
 
 	* config/rs6000/rs6000.c (have_compare_and_set_mask): Add IEEE
diff --git a/gcc/testsuite/ChangeLog.meissner b/gcc/testsuite/ChangeLog.meissner
index b229e3830ad..c58b261fcd4 100644
--- a/gcc/testsuite/ChangeLog.meissner
+++ b/gcc/testsuite/ChangeLog.meissner
@@ -1,3 +1,21 @@
+2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
+
+	* gcc.target/powerpc/pcrel-opt-inc-di.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-ld-df.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-ld-di.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-ld-hi.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-ld-qi.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-ld-sf.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-ld-si.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-ld-vector.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-st-df.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-st-di.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-st-hi.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-st-qi.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-st-sf.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-st-si.c: New PCREL_OPT test.
+	* gcc.target/powerpc/pcrel-opt-st-vector.c: New PCREL_OPT test.
+
 2020-09-30  Michael Meissner  <meissner@linux.ibm.com>
 
 	* gcc.target/powerpc/float128-cmove.c: New test.


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-10-08  5:25 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-30 20:04 [gcc(refs/users/meissner/heads/work019)] Update ChangeLog.meissner Michael Meissner
2020-09-30 20:10 Michael Meissner
2020-09-30 20:47 Michael Meissner
2020-10-01  1:44 Michael Meissner
2020-10-01  3:36 Michael Meissner
2020-10-01  3:55 Michael Meissner
2020-10-05 22:47 Michael Meissner
2020-10-08  5:25 Michael Meissner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).