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
693ee8cf
Commit
693ee8cf
authored
Feb 03, 2010
by
Anthony Green
Committed by
Anthony Green
Feb 03, 2010
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix moxie tramponline alignment problem
From-SVN: r156465
parent
bf8e3b77
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
17 additions
and
5 deletions
+17
-5
gcc/ChangeLog
+11
-0
gcc/config/moxie/moxie.c
+3
-2
gcc/config/moxie/moxie.h
+3
-3
No files found.
gcc/ChangeLog
View file @
693ee8cf
2010-02-03 Anthony Green <green@moxielogic.com>
* config/moxie/moxie.c (moxie_asm_trampoline_template): Introduce
nop padding in order to maintain alignment of storage location of
target function address.
(moxie_trampoline_init): Store target function address at newly
aligned location.
* config/moxie/moxie.h (TRAMPOLINE_ALIGNMENT): Increase alignment
to 32.
(TRAMPOLINE_SIZE): Increase size by 2 bytes for alignment padding.
2010-02-03 Richard Guenther <rguenther@suse.de>
PR middle-end/42927
...
...
gcc/config/moxie/moxie.c
View file @
693ee8cf
/* Target Code for moxie
Copyright (C) 2008, 2009 Free Software Foundation
Copyright (C) 2008, 2009
, 2010
Free Software Foundation
Contributed by Anthony Green.
This file is part of GCC.
...
...
@@ -483,6 +483,7 @@ moxie_asm_trampoline_template (FILE *f)
fprintf
(
f
,
"
\t
ldi.l $r0, 0x0
\n
"
);
fprintf
(
f
,
"
\t
sto.l 0x8($fp), $r0
\n
"
);
fprintf
(
f
,
"
\t
pop $sp, $r0
\n
"
);
fprintf
(
f
,
"
\t
nop
\n
"
);
fprintf
(
f
,
"
\t
jmpa 0x0
\n
"
);
}
...
...
@@ -498,7 +499,7 @@ moxie_trampoline_init (rtx m_tramp, tree fndecl, rtx chain_value)
mem
=
adjust_address
(
m_tramp
,
SImode
,
4
);
emit_move_insn
(
mem
,
chain_value
);
mem
=
adjust_address
(
m_tramp
,
SImode
,
18
);
mem
=
adjust_address
(
m_tramp
,
SImode
,
20
);
emit_move_insn
(
mem
,
fnaddr
);
}
...
...
gcc/config/moxie/moxie.h
View file @
693ee8cf
/* Target Definitions for moxie.
Copyright (C) 2008, 2009 Free Software Foundation, Inc.
Copyright (C) 2008, 2009
, 2010
Free Software Foundation, Inc.
Contributed by Anthony Green.
This file is part of GCC.
...
...
@@ -386,10 +386,10 @@ enum reg_class
#define FUNCTION_PROFILER(FILE,LABELNO) (abort (), 0)
/* Trampolines for Nested Functions. */
#define TRAMPOLINE_SIZE (2 + 6 + 6 + 2 + 6)
#define TRAMPOLINE_SIZE (2 + 6 + 6 + 2 +
2 +
6)
/* Alignment required for trampolines, in bits. */
#define TRAMPOLINE_ALIGNMENT
16
#define TRAMPOLINE_ALIGNMENT
32
/* An alias for the machine mode for pointers. */
#define Pmode SImode
...
...
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