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
0afeb08a
Commit
0afeb08a
authored
Feb 16, 1996
by
Stan Cox
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
(ix86_expand_binary_operator): Allow for operand1 of MINUS to be CONST_INT
From-SVN: r11289
parent
b7237e6d
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
19 additions
and
1 deletions
+19
-1
gcc/config/i386/i386.c
+19
-1
No files found.
gcc/config/i386/i386.c
View file @
0afeb08a
...
@@ -1560,6 +1560,14 @@ ix86_expand_binary_operator (code, mode, operands)
...
@@ -1560,6 +1560,14 @@ ix86_expand_binary_operator (code, mode, operands)
if
(
GET_CODE
(
operands
[
2
])
==
MEM
)
if
(
GET_CODE
(
operands
[
2
])
==
MEM
)
operands
[
2
]
=
force_reg
(
GET_MODE
(
operands
[
2
]),
operands
[
2
]);
operands
[
2
]
=
force_reg
(
GET_MODE
(
operands
[
2
]),
operands
[
2
]);
if
(
GET_CODE
(
operands
[
1
])
==
CONST_INT
&&
code
==
MINUS
)
{
rtx
temp
=
gen_reg_rtx
(
GET_MODE
(
operands
[
0
]));
emit_move_insn
(
temp
,
operands
[
1
]);
operands
[
1
]
=
temp
;
return
TRUE
;
}
}
}
if
(
!
ix86_binary_operator_ok
(
code
,
mode
,
operands
))
if
(
!
ix86_binary_operator_ok
(
code
,
mode
,
operands
))
...
@@ -1584,6 +1592,14 @@ ix86_expand_binary_operator (code, mode, operands)
...
@@ -1584,6 +1592,14 @@ ix86_expand_binary_operator (code, mode, operands)
modified
=
TRUE
;
modified
=
TRUE
;
}
}
if
(
GET_CODE
(
operands
[
1
])
==
CONST_INT
&&
code
==
MINUS
)
{
rtx
temp
=
gen_reg_rtx
(
GET_MODE
(
operands
[
0
]));
emit_move_insn
(
temp
,
operands
[
1
]);
operands
[
1
]
=
temp
;
return
TRUE
;
}
if
(
modified
&&
!
ix86_binary_operator_ok
(
code
,
mode
,
operands
))
if
(
modified
&&
!
ix86_binary_operator_ok
(
code
,
mode
,
operands
))
return
FALSE
;
return
FALSE
;
}
}
...
@@ -1603,7 +1619,9 @@ ix86_binary_operator_ok (code, mode, operands)
...
@@ -1603,7 +1619,9 @@ ix86_binary_operator_ok (code, mode, operands)
enum
machine_mode
mode
;
enum
machine_mode
mode
;
rtx
operands
[
3
];
rtx
operands
[
3
];
{
{
return
TRUE
;
return
(
GET_CODE
(
operands
[
1
])
!=
MEM
&&
GET_CODE
(
operands
[
2
])
!=
MEM
&&
GET_CODE
(
operands
[
1
])
!=
CONST_INT
)
||
GET_RTX_CLASS
(
code
)
==
'c'
;
}
}
/* Attempt to expand a unary operator. Make the expansion closer to the
/* Attempt to expand a unary operator. Make the expansion closer to the
...
...
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