Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
riscv-gcc-1
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
riscv-gcc-1
Commits
9fe5bce9
Commit
9fe5bce9
authored
Apr 25, 1993
by
Jim Wilson
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
(movstrsi): Comment out.
From-SVN: r4220
parent
09aa6559
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
41 additions
and
39 deletions
+41
-39
gcc/config/sparc/sparc.md
+41
-39
No files found.
gcc/config/sparc/sparc.md
View file @
9fe5bce9
...
@@ -1028,50 +1028,52 @@
...
@@ -1028,50 +1028,52 @@
[
(set_attr "type" "store")
[
(set_attr "type" "store")
(set_attr "length" "2")])
(set_attr "length" "2")])
;; ??? We get better code without it. See output_block_move in sparc.c.
;; The definition of this insn does not really explain what it does,
;; The definition of this insn does not really explain what it does,
;; but it should suffice
;; but it should suffice
;; that anything generated as this insn will be recognized as one
;; that anything generated as this insn will be recognized as one
;; and that it will not successfully combine with anything.
;; and that it will not successfully combine with anything.
(define_expand "movstrsi"
;(define_expand "movstrsi"
[
(parallel
[
(set (mem:BLK (match_operand:BLK 0 "general_operand" ""))
;
[
(parallel
[
(set (mem:BLK (match_operand:BLK 0 "general_operand" ""))
(mem:BLK (match_operand:BLK 1 "general_operand" "")))
; (mem:BLK (match_operand:BLK 1 "general_operand" "")))
(use (match_operand:SI 2 "nonmemory_operand" ""))
; (use (match_operand:SI 2 "nonmemory_operand" ""))
(use (match_operand:SI 3 "immediate_operand" ""))
; (use (match_operand:SI 3 "immediate_operand" ""))
(clobber (match_dup 0))
; (clobber (match_dup 0))
(clobber (match_dup 1))
; (clobber (match_dup 1))
(clobber (match_scratch:SI 4 ""))
; (clobber (match_scratch:SI 4 ""))
(clobber (reg:SI 0))
; (clobber (reg:SI 0))
(clobber (reg:SI 1))])]
; (clobber (reg:SI 1))])]
""
; ""
"
; "
{
;{
/
*
If the size isn't known, don't emit inline code. output_block_move
; /
*
If the size isn't known, don't emit inline code. output_block_move
would output code that's much slower than the library function.
; would output code that's much slower than the library function.
Also don't output code for large blocks.
*
/
; Also don't output code for large blocks.
*
/
if (GET_CODE (operands
[
2
]
) != CONST_INT
; if (GET_CODE (operands
[
2
]
) != CONST_INT
|| GET_CODE (operands
[
3
]
) != CONST_INT
; || GET_CODE (operands
[
3
]
) != CONST_INT
|| INTVAL (operands
[
2
]
) / INTVAL (operands
[
3
]
) > 16)
; || INTVAL (operands
[
2
]
) / INTVAL (operands
[
3
]
) > 16)
FAIL;
; FAIL;
;
; operands
[
0
]
= copy_to_mode_reg (Pmode, XEXP (operands
[
0
]
, 0));
; operands
[
1
]
= copy_to_mode_reg (Pmode, XEXP (operands
[
1
]
, 0));
; operands
[
2
]
= force_not_mem (operands
[
2
]
);
;}")
operands
[
0
]
= copy_to_mode_reg (Pmode, XEXP (operands
[
0
]
, 0));
;(define_insn ""
operands
[
1
]
= copy_to_mode_reg (Pmode, XEXP (operands
[
1
]
, 0));
;
[
(set (mem:BLK (match_operand:SI 0 "register_operand" "+r"))
operands
[
2
]
= force_not_mem (operands
[
2
]
);
; (mem:BLK (match_operand:SI 1 "register_operand" "+r")))
}")
; (use (match_operand:SI 2 "nonmemory_operand" "rn"))
; (use (match_operand:SI 3 "immediate_operand" "i"))
(define_insn ""
; (clobber (match_dup 0))
[
(set (mem:BLK (match_operand:SI 0 "register_operand" "+r"))
; (clobber (match_dup 1))
(mem:BLK (match_operand:SI 1 "register_operand" "+r")))
; (clobber (match_scratch:SI 4 "=&r"))
(use (match_operand:SI 2 "nonmemory_operand" "rn"))
; (clobber (reg:SI 0))
(use (match_operand:SI 3 "immediate_operand" "i"))
; (clobber (reg:SI 1))]
(clobber (match_dup 0))
; ""
(clobber (match_dup 1))
; "
*
return output_block_move (operands);"
(clobber (match_scratch:SI 4 "=&r"))
;
[
(set_attr "type" "multi")
(clobber (reg:SI 0))
; (set_attr "length" "6")])
(clobber (reg:SI 1))]
""
"
*
return output_block_move (operands);"
[
(set_attr "type" "multi")
(set_attr "length" "6")])
;; Floating point move insns
;; Floating point move insns
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment