summaryrefslogtreecommitdiff
path: root/gcc/config/arc
diff options
context:
space:
mode:
authoramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>2013-10-01 20:11:58 +0000
committeramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>2013-10-01 20:11:58 +0000
commit1f103bf674d582be3a18daabb58f327c4645d816 (patch)
tree469bfc9969593ad5191eabbb3bd4430af50ea200 /gcc/config/arc
parent299413976b391a955c42aa89133724f94f4e5dec (diff)
downloadgcc-1f103bf674d582be3a18daabb58f327c4645d816.tar.gz
* config/arc/arc.md: Expand adc_0 comment stating the intended
purpose and why it isn't ready. Replace commented out call_value_via_label_mixed with a plain comment about bl_s. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203085 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/arc')
-rw-r--r--gcc/config/arc/arc.md14
1 files changed, 5 insertions, 9 deletions
diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md
index 37103fe6ce0..aa8243a8c83 100644
--- a/gcc/config/arc/arc.md
+++ b/gcc/config/arc/arc.md
@@ -2394,6 +2394,8 @@
(set (match_dup 0)
(plus:SI (match_dup 1) (match_dup 2)))])])
+; ??? need to delve into combine to find out why this is not useful.
+; We'd like to be able to grok various C idioms for carry bit usage.
;(define_insn "*adc_0"
; [(set (match_operand:SI 0 "dest_reg_operand" "=w")
; (plus:SI (ltu:SI (reg:CC_C CC_REG) (const_int 0))
@@ -3850,16 +3852,10 @@
(set_attr "predicable" "no,no,yes,yes,no,yes,no,yes")
(set_attr "length" "*,*,4,4,4,4,4,8")])
+; There is a bl_s instruction (16 bit opcode branch-and-link), but we can't
+; use it for lack of inter-procedural branch shortening.
+; Link-time relaxation would help...
-;; TODO - supporting 16-bit short "branch and link" insns if required.
-;(define_insn "*call_value_via_label_mixed"
-; [(set (match_operand 0 "register_operand" "=r")
-; (call (mem:SI (match_operand:SI 1 "call_address_operand" ""))
-; (match_operand 2 "" "")))
-; (clobber (reg:SI 31))]
-; "TARGET_MIXED_CODE"
-; "bl_s %1"
-; [(set_attr "type" "call")])
(define_insn "call_value_prof"
[(set (match_operand 0 "dest_reg_operand" "=r,r")