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
6893e828
Commit
6893e828
authored
Jan 02, 2008
by
Arthur Norman
Committed by
Kai Tietz
Jan 02, 2008
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
(ix86_expand_prologue): Save red-zone while stack probing.
PR 34013. From-SVN: r131255
parent
1a7817e4
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
4 deletions
+16
-4
gcc/ChangeLog
+7
-1
gcc/config/i386/i386.c
+9
-3
No files found.
gcc/ChangeLog
View file @
6893e828
2008
-
01
-
02
Arthur
Norman
<
acn1
@
cam
.
ac
.
uk
>
PR
34013
*
gcc
/
config
/
i386
/
i386
.
c
:
(
ix86_expand_prologue
):
Save
red
-
zone
while
stack
probing
.
2008
-
01
-
01
Douglas
Gregor
<
doug
.
gregor
@
gmail
.
com
>
2008
-
01
-
01
Douglas
Gregor
<
doug
.
gregor
@
gmail
.
com
>
*
c
-
opts
.
c
(
sanitize_cpp_opts
):
Don
't warn about "long long" when
*
c
-
opts
.
c
(
sanitize_cpp_opts
):
Don
't warn about "long long" when
in C++0x mode.
in C++0x mode.
2008-01-01 Volker Reichelt <v.reichelt@netcologne.de>
2008-01-01 Volker Reichelt <v.reichelt@netcologne.de>
gcc/config/i386/i386.c
View file @
6893e828
...
@@ -6318,8 +6318,12 @@ ix86_expand_prologue (void)
...
@@ -6318,8 +6318,12 @@ ix86_expand_prologue (void)
allocate
+=
frame
.
nregs
*
UNITS_PER_WORD
;
allocate
+=
frame
.
nregs
*
UNITS_PER_WORD
;
/* When using red zone we may start register saving before allocating
/* When using red zone we may start register saving before allocating
the stack frame saving one cycle of the prologue. */
the stack frame saving one cycle of the prologue. However I will
if
(
TARGET_RED_ZONE
&&
frame
.
save_regs_using_mov
)
avoid doing this if I am going to have to probe the stack since
at least on x86_64 the stack probe can turn into a call that clobbers
a red zone location */
if
(
TARGET_RED_ZONE
&&
frame
.
save_regs_using_mov
&&
(
!
TARGET_STACK_PROBE
||
allocate
<
CHECK_STACK_LIMIT
))
ix86_emit_save_regs_using_mov
(
frame_pointer_needed
?
hard_frame_pointer_rtx
ix86_emit_save_regs_using_mov
(
frame_pointer_needed
?
hard_frame_pointer_rtx
:
stack_pointer_rtx
,
:
stack_pointer_rtx
,
-
frame
.
nregs
*
UNITS_PER_WORD
);
-
frame
.
nregs
*
UNITS_PER_WORD
);
...
@@ -6375,7 +6379,9 @@ ix86_expand_prologue (void)
...
@@ -6375,7 +6379,9 @@ ix86_expand_prologue (void)
}
}
}
}
if
(
frame
.
save_regs_using_mov
&&
!
TARGET_RED_ZONE
)
if
(
frame
.
save_regs_using_mov
&&
!
(
TARGET_RED_ZONE
&&
(
!
TARGET_STACK_PROBE
||
allocate
<
CHECK_STACK_LIMIT
)))
{
{
if
(
!
frame_pointer_needed
||
!
frame
.
to_allocate
)
if
(
!
frame_pointer_needed
||
!
frame
.
to_allocate
)
ix86_emit_save_regs_using_mov
(
stack_pointer_rtx
,
frame
.
to_allocate
);
ix86_emit_save_regs_using_mov
(
stack_pointer_rtx
,
frame
.
to_allocate
);
...
...
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