diff options
author | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | 2003-02-18 18:27:13 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2003-02-18 18:27:13 +0000 |
commit | 131efcd8e006ff180e498a50ad47261716539346 (patch) | |
tree | 33dcd708f30197623100dd92b09d555a76fd6079 | |
parent | dce53c70a455e6067fbe6e1b22c3afd9b2676d19 (diff) | |
download | gcc-131efcd8e006ff180e498a50ad47261716539346.zip gcc-131efcd8e006ff180e498a50ad47261716539346.tar.gz gcc-131efcd8e006ff180e498a50ad47261716539346.tar.bz2 |
* pa.md: Correct and enhance comment.
From-SVN: r63049
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/pa/pa.md | 48 |
2 files changed, 44 insertions, 8 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fd9b2d1..39529c2f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2003-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> + + * pa.md: Correct and enhance comment. + 2003-02-18 Geoffrey Keating <geoffk@apple.com> * gcc.c (validate_switches): Don't scan past closing '}'. diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md index d8b2a4a..d4f6461 100644 --- a/gcc/config/pa/pa.md +++ b/gcc/config/pa/pa.md @@ -6021,7 +6021,11 @@ (symbol_ref "attr_length_save_restore_dltp (insn)")))]) ;; Split out the PIC register save and restore after reload. This is -;; done if the function doesn't return. +;; done only if the function returns. As the split is done after reload, +;; there are some situations in which we unnecessarily save and restore +;; %r4. This happens when there is a single call and the PIC register +;; is "dead" after the call. This isn't easy to fix as the usage of +;; the PIC register isn't completely determined until the reload pass. (define_split [(parallel [(call (mem:SI (match_operand 0 "call_operand_address" "")) (match_operand 1 "" "")) @@ -6102,7 +6106,11 @@ (symbol_ref "attr_length_save_restore_dltp (insn)")))]) ;; Split out the PIC register save and restore after reload. This is -;; done if the function doesn't return. +;; done only if the function returns. As the split is done after reload, +;; there are some situations in which we unnecessarily save and restore +;; %r4. This happens when there is a single call and the PIC register +;; is "dead" after the call. This isn't easy to fix as the usage of +;; the PIC register isn't completely determined until the reload pass. (define_split [(parallel [(call (mem:SI (match_operand 0 "call_operand_address" "")) (match_operand 1 "" "")) @@ -6200,7 +6208,11 @@ (symbol_ref "attr_length_save_restore_dltp (insn)")))]) ;; Split out the PIC register save and restore after reload. This is -;; done if the function doesn't return. +;; done only if the function returns. As the split is done after reload, +;; there are some situations in which we unnecessarily save and restore +;; %r4. This happens when there is a single call and the PIC register +;; is "dead" after the call. This isn't easy to fix as the usage of +;; the PIC register isn't completely determined until the reload pass. (define_split [(parallel [(call (mem:SI (reg:SI 22)) (match_operand 0 "" "")) @@ -6278,7 +6290,11 @@ (symbol_ref "attr_length_save_restore_dltp (insn)")))]) ;; Split out the PIC register save and restore after reload. This is -;; done if the function doesn't return. +;; done only if the function returns. As the split is done after reload, +;; there are some situations in which we unnecessarily save and restore +;; %r4. This happens when there is a single call and the PIC register +;; is "dead" after the call. This isn't easy to fix as the usage of +;; the PIC register isn't completely determined until the reload pass. (define_split [(parallel [(call (mem:SI (match_operand 0 "register_operand" "")) (match_operand 1 "" "")) @@ -6460,7 +6476,11 @@ (symbol_ref "attr_length_save_restore_dltp (insn)")))]) ;; Split out the PIC register save and restore after reload. This is -;; done if the function doesn't return. +;; done only if the function returns. As the split is done after reload, +;; there are some situations in which we unnecessarily save and restore +;; %r4. This happens when there is a single call and the PIC register +;; is "dead" after the call. This isn't easy to fix as the usage of +;; the PIC register isn't completely determined until the reload pass. (define_split [(parallel [(set (match_operand 0 "" "") (call (mem:SI (match_operand 1 "call_operand_address" "")) @@ -6547,7 +6567,11 @@ (symbol_ref "attr_length_save_restore_dltp (insn)")))]) ;; Split out the PIC register save and restore after reload. This is -;; done if the function doesn't return. +;; done only if the function returns. As the split is done after reload, +;; there are some situations in which we unnecessarily save and restore +;; %r4. This happens when there is a single call and the PIC register +;; is "dead" after the call. This isn't easy to fix as the usage of +;; the PIC register isn't completely determined until the reload pass. (define_split [(parallel [(set (match_operand 0 "" "") (call (mem:SI (match_operand 1 "call_operand_address" "")) @@ -6652,7 +6676,11 @@ (symbol_ref "attr_length_save_restore_dltp (insn)")))]) ;; Split out the PIC register save and restore after reload. This is -;; done if the function doesn't return. +;; done only if the function returns. As the split is done after reload, +;; there are some situations in which we unnecessarily save and restore +;; %r4. This happens when there is a single call and the PIC register +;; is "dead" after the call. This isn't easy to fix as the usage of +;; the PIC register isn't completely determined until the reload pass. (define_split [(parallel [(set (match_operand 0 "" "") (call (mem:SI (reg:SI 22)) @@ -6736,7 +6764,11 @@ (symbol_ref "attr_length_save_restore_dltp (insn)")))]) ;; Split out the PIC register save and restore after reload. This is -;; done if the function doesn't return. +;; done only if the function returns. As the split is done after reload, +;; there are some situations in which we unnecessarily save and restore +;; %r4. This happens when there is a single call and the PIC register +;; is "dead" after the call. This isn't easy to fix as the usage of +;; the PIC register isn't completely determined until the reload pass. (define_split [(parallel [(set (match_operand 0 "" "") (call (mem:SI (match_operand:DI 1 "register_operand" "")) |