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
eccc11fb
Commit
eccc11fb
authored
May 19, 1997
by
Jim Wilson
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
(scc0_di, scc_di, seq, sne, sgt, sgtu, slt, sltu, sge, sgeu,
sle, sleu): Add coldfire support. From-SVN: r14106
parent
102701ff
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
139 additions
and
16 deletions
+139
-16
gcc/config/m68k/m68k.md
+139
-16
No files found.
gcc/config/m68k/m68k.md
View file @
eccc11fb
...
@@ -5249,7 +5249,17 @@
...
@@ -5249,7 +5249,17 @@
[
(set (match_operand:QI 0 "general_operand" "=dm")
[
(set (match_operand:QI 0 "general_operand" "=dm")
(match_operator 1 "valid_dbcc_comparison_p"
(match_operator 1 "valid_dbcc_comparison_p"
[
(match_operand:DI 2 "general_operand" "ro") (const_int 0)
]
))]
[
(match_operand:DI 2 "general_operand" "ro") (const_int 0)
]
))]
""
"! TARGET_5200"
"
*
{
return output_scc_di (operands
[
1
]
, operands
[
2
]
, const0_rtx, operands
[
0
]
);
} ")
(define_insn "scc0_di_5200"
[
(set (match_operand:QI 0 "general_operand" "=d")
(match_operator 1 "valid_dbcc_comparison_p"
[
(match_operand:DI 2 "general_operand" "ro") (const_int 0)
]
))]
"TARGET_5200"
"
*
"
*
{
{
return output_scc_di (operands
[
1
]
, operands
[
2
]
, const0_rtx, operands
[
0
]
);
return output_scc_di (operands
[
1
]
, operands
[
2
]
, const0_rtx, operands
[
0
]
);
...
@@ -5260,7 +5270,18 @@
...
@@ -5260,7 +5270,18 @@
(match_operator 1 "valid_dbcc_comparison_p"
(match_operator 1 "valid_dbcc_comparison_p"
[
(match_operand:DI 2 "general_operand" "ro,r")
[
(match_operand:DI 2 "general_operand" "ro,r")
(match_operand:DI 3 "general_operand" "r,ro")]))]
(match_operand:DI 3 "general_operand" "r,ro")]))]
""
"! TARGET_5200"
"
*
{
return output_scc_di (operands
[
1
]
, operands
[
2
]
, operands
[
3
]
, operands
[
0
]
);
} ")
(define_insn "scc_di_5200"
[
(set (match_operand:QI 0 "general_operand" "=d,d")
(match_operator 1 "valid_dbcc_comparison_p"
[
(match_operand:DI 2 "general_operand" "ro,r")
(match_operand:DI 3 "general_operand" "r,ro")]))]
"TARGET_5200"
"
*
"
*
{
{
return output_scc_di (operands
[
1
]
, operands
[
2
]
, operands
[
3
]
, operands
[
0
]
);
return output_scc_di (operands
[
1
]
, operands
[
2
]
, operands
[
3
]
, operands
[
0
]
);
...
@@ -5282,7 +5303,16 @@
...
@@ -5282,7 +5303,16 @@
(define_insn ""
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
[
(set (match_operand:QI 0 "general_operand" "=dm")
(eq:QI (cc0) (const_int 0)))]
(eq:QI (cc0) (const_int 0)))]
""
"! TARGET_5200"
"
*
cc_status = cc_prev_status;
OUTPUT_JUMP (
\"
seq %0
\"
,
\"
fseq %0
\"
,
\"
seq %0
\"
);
")
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=d")
(eq:QI (cc0) (const_int 0)))]
"TARGET_5200"
"
*
"
*
cc_status = cc_prev_status;
cc_status = cc_prev_status;
OUTPUT_JUMP (
\"
seq %0
\"
,
\"
fseq %0
\"
,
\"
seq %0
\"
);
OUTPUT_JUMP (
\"
seq %0
\"
,
\"
fseq %0
\"
,
\"
seq %0
\"
);
...
@@ -5304,7 +5334,16 @@
...
@@ -5304,7 +5334,16 @@
(define_insn ""
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
[
(set (match_operand:QI 0 "general_operand" "=dm")
(ne:QI (cc0) (const_int 0)))]
(ne:QI (cc0) (const_int 0)))]
""
"! TARGET_5200"
"
*
cc_status = cc_prev_status;
OUTPUT_JUMP (
\"
sne %0
\"
,
\"
fsne %0
\"
,
\"
sne %0
\"
);
")
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=d")
(ne:QI (cc0) (const_int 0)))]
"TARGET_5200"
"
*
"
*
cc_status = cc_prev_status;
cc_status = cc_prev_status;
OUTPUT_JUMP (
\"
sne %0
\"
,
\"
fsne %0
\"
,
\"
sne %0
\"
);
OUTPUT_JUMP (
\"
sne %0
\"
,
\"
fsne %0
\"
,
\"
sne %0
\"
);
...
@@ -5326,16 +5365,38 @@
...
@@ -5326,16 +5365,38 @@
(define_insn ""
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
[
(set (match_operand:QI 0 "general_operand" "=dm")
(gt:QI (cc0) (const_int 0)))]
(gt:QI (cc0) (const_int 0)))]
""
"
! TARGET_5200
"
"
*
"
*
cc_status = cc_prev_status;
cc_status = cc_prev_status;
OUTPUT_JUMP (
\"
sgt %0
\"
,
\"
fsgt %0
\"
, 0);
OUTPUT_JUMP (
\"
sgt %0
\"
,
\"
fsgt %0
\"
, 0);
")
")
(define_insn "sgtu"
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
[
(set (match_operand:QI 0 "general_operand" "=d")
(gt:QI (cc0) (const_int 0)))]
"TARGET_5200"
"
*
cc_status = cc_prev_status;
OUTPUT_JUMP (
\"
sgt %0
\"
,
\"
fsgt %0
\"
, 0);
")
(define_expand "sgtu"
[
(set (match_operand:QI 0 "general_operand" "")
(gtu:QI (cc0) (const_int 0)))]
(gtu:QI (cc0) (const_int 0)))]
""
""
"")
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
(gtu:QI (cc0) (const_int 0)))]
"! TARGET_5200"
"
*
cc_status = cc_prev_status;
return
\"
shi %0
\"
; ")
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=d")
(gtu:QI (cc0) (const_int 0)))]
"TARGET_5200"
"
*
cc_status = cc_prev_status;
"
*
cc_status = cc_prev_status;
return
\"
shi %0
\"
; ")
return
\"
shi %0
\"
; ")
...
@@ -5355,14 +5416,34 @@
...
@@ -5355,14 +5416,34 @@
(define_insn ""
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
[
(set (match_operand:QI 0 "general_operand" "=dm")
(lt:QI (cc0) (const_int 0)))]
(lt:QI (cc0) (const_int 0)))]
""
"
! TARGET_5200
"
"
*
cc_status = cc_prev_status;
"
*
cc_status = cc_prev_status;
OUTPUT_JUMP (
\"
slt %0
\"
,
\"
fslt %0
\"
,
\"
smi %0
\"
); ")
OUTPUT_JUMP (
\"
slt %0
\"
,
\"
fslt %0
\"
,
\"
smi %0
\"
); ")
(define_insn "sltu"
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
[
(set (match_operand:QI 0 "general_operand" "=d")
(lt:QI (cc0) (const_int 0)))]
"TARGET_5200"
"
*
cc_status = cc_prev_status;
OUTPUT_JUMP (
\"
slt %0
\"
,
\"
fslt %0
\"
,
\"
smi %0
\"
); ")
(define_expand "sltu"
[
(set (match_operand:QI 0 "general_operand" "")
(ltu:QI (cc0) (const_int 0)))]
(ltu:QI (cc0) (const_int 0)))]
""
""
"")
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
(ltu:QI (cc0) (const_int 0)))]
"! TARGET_5200"
"
*
cc_status = cc_prev_status;
return
\"
scs %0
\"
; ")
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=d")
(ltu:QI (cc0) (const_int 0)))]
"TARGET_5200"
"
*
cc_status = cc_prev_status;
"
*
cc_status = cc_prev_status;
return
\"
scs %0
\"
; ")
return
\"
scs %0
\"
; ")
...
@@ -5382,14 +5463,34 @@
...
@@ -5382,14 +5463,34 @@
(define_insn ""
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
[
(set (match_operand:QI 0 "general_operand" "=dm")
(ge:QI (cc0) (const_int 0)))]
(ge:QI (cc0) (const_int 0)))]
""
"
! TARGET_5200
"
"
*
cc_status = cc_prev_status;
"
*
cc_status = cc_prev_status;
OUTPUT_JUMP (
\"
sge %0
\"
,
\"
fsge %0
\"
,
\"
spl %0
\"
); ")
OUTPUT_JUMP (
\"
sge %0
\"
,
\"
fsge %0
\"
,
\"
spl %0
\"
); ")
(define_insn "sgeu"
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
[
(set (match_operand:QI 0 "general_operand" "=d")
(ge:QI (cc0) (const_int 0)))]
"TARGET_5200"
"
*
cc_status = cc_prev_status;
OUTPUT_JUMP (
\"
sge %0
\"
,
\"
fsge %0
\"
,
\"
spl %0
\"
); ")
(define_expand "sgeu"
[
(set (match_operand:QI 0 "general_operand" "")
(geu:QI (cc0) (const_int 0)))]
(geu:QI (cc0) (const_int 0)))]
""
""
"")
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
(geu:QI (cc0) (const_int 0)))]
"! TARGET_5200"
"
*
cc_status = cc_prev_status;
return
\"
scc %0
\"
; ")
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=d")
(geu:QI (cc0) (const_int 0)))]
"TARGET_5200"
"
*
cc_status = cc_prev_status;
"
*
cc_status = cc_prev_status;
return
\"
scc %0
\"
; ")
return
\"
scc %0
\"
; ")
...
@@ -5409,16 +5510,38 @@
...
@@ -5409,16 +5510,38 @@
(define_insn ""
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
[
(set (match_operand:QI 0 "general_operand" "=dm")
(le:QI (cc0) (const_int 0)))]
(le:QI (cc0) (const_int 0)))]
""
"
! TARGET_5200
"
"
*
"
*
cc_status = cc_prev_status;
cc_status = cc_prev_status;
OUTPUT_JUMP (
\"
sle %0
\"
,
\"
fsle %0
\"
, 0);
OUTPUT_JUMP (
\"
sle %0
\"
,
\"
fsle %0
\"
, 0);
")
")
(define_insn "sleu"
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
[
(set (match_operand:QI 0 "general_operand" "=d")
(le:QI (cc0) (const_int 0)))]
"TARGET_5200"
"
*
cc_status = cc_prev_status;
OUTPUT_JUMP (
\"
sle %0
\"
,
\"
fsle %0
\"
, 0);
")
(define_expand "sleu"
[
(set (match_operand:QI 0 "general_operand" "")
(leu:QI (cc0) (const_int 0)))]
(leu:QI (cc0) (const_int 0)))]
""
""
"")
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=dm")
(leu:QI (cc0) (const_int 0)))]
"! TARGET_5200"
"
*
cc_status = cc_prev_status;
return
\"
sls %0
\"
; ")
(define_insn ""
[
(set (match_operand:QI 0 "general_operand" "=d")
(leu:QI (cc0) (const_int 0)))]
"TARGET_5200"
"
*
cc_status = cc_prev_status;
"
*
cc_status = cc_prev_status;
return
\"
sls %0
\"
; ")
return
\"
sls %0
\"
; ")
...
...
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