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
03e9dbc9
Commit
03e9dbc9
authored
Mar 14, 2002
by
Michael Meissner
Committed by
Michael Meissner
Mar 14, 2002
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add --param max-unrolled-insns=<n> support
From-SVN: r50787
parent
12249385
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
31 additions
and
8 deletions
+31
-8
gcc/ChangeLog
+15
-0
gcc/Makefile.in
+1
-1
gcc/doc/invoke.texi
+5
-0
gcc/params.def
+7
-0
gcc/params.h
+2
-0
gcc/unroll.c
+1
-7
No files found.
gcc/ChangeLog
View file @
03e9dbc9
2002-03-14 Michael Meissner <meissner@redhat.com>
* params.def (PARAM_MAX_UNROLLED_INSNS): New macro, default to
100, allowing MAX_UNROLLED_INSNS to be overridden.
* params.h (MAX_UNROLLED_INSNS): Define so it can be overridden by
--param.
* unroll.c (params.h): Include.
(MAX_UNROLLED_INSNS): Delete, now in params.h.
* doc/invoke.texi (--param max-unroll-insns): Document.
* Makefile.in (unroll.o): Add $(PARAMS_H) dependency.
2002-03-14 Richard Earnshaw <rearnsha@arm.com>
* arm.md: Fix warnings about constraints in peepholes and splits.
...
...
gcc/Makefile.in
View file @
03e9dbc9
...
...
@@ -1483,7 +1483,7 @@ doloop.o : doloop.c $(CONFIG_H) $(SYSTEM_H) $(RTL_H) flags.h $(LOOP_H) \
$(EXPR_H) hard-reg-set.h $(BASIC_BLOCK_H) $(TM_P_H) toplev.h
unroll.o
:
unroll.c $(CONFIG_H) $(SYSTEM_H) $(RTL_H) insn-config.h function.h
\
$(INTEGRATE_H) $(REGS_H) $(RECOG_H) flags.h $(EXPR_H) $(LOOP_H) toplev.h
\
hard-reg-set.h varray.h $(BASIC_BLOCK_H) $(TM_P_H) $(PREDICT_H)
hard-reg-set.h varray.h $(BASIC_BLOCK_H) $(TM_P_H) $(PREDICT_H)
$(PARAMS_H)
flow.o
:
flow.c $(CONFIG_H) $(SYSTEM_H) $(RTL_H) $(TREE_H) flags.h insn-config.h
\
$(BASIC_BLOCK_H) $(REGS_H) hard-reg-set.h output.h toplev.h $(RECOG_H)
\
function.h except.h $(EXPR_H) ssa.h $(GGC_H) $(TM_P_H)
...
...
gcc/doc/invoke.texi
View file @
03e9dbc9
...
...
@@ -3851,6 +3851,11 @@ If an function contains more than this many instructions, it
will
not
be
inlined
.
This
option
is
precisely
equivalent
to
@
option
{-
finline
-
limit
}.
@
item
max
-
unrolled
-
insns
The
maximum
number
of
instructions
that
a
loop
should
have
if
that
loop
is
unrolled
,
and
if
the
loop
is
unrolled
,
it
determines
how
many
times
the
loop
code
is
unrolled
.
@
end
table
@
end
table
...
...
gcc/params.def
View file @
03e9dbc9
...
...
@@ -89,6 +89,13 @@ DEFPARAM(PARAM_MAX_GCSE_PASSES,
"max-gcse-passes",
"The maximum number of passes to make when doing GCSE",
1)
/* This parameter limits the number of insns in a loop that will be unrolled,
and by how much the loop is unrolled. */
DEFPARAM(PARAM_MAX_UNROLLED_INSNS,
"max-unrolled-insns",
"The maximum number of instructions to consider to unroll in a loop",
100)
/*
Local variables:
mode:c
...
...
gcc/params.h
View file @
03e9dbc9
...
...
@@ -96,4 +96,6 @@ typedef enum compiler_param
((size_t) PARAM_VALUE (PARAM_MAX_GCSE_MEMORY))
#define MAX_GCSE_PASSES \
PARAM_VALUE (PARAM_MAX_GCSE_PASSES)
#define MAX_UNROLLED_INSNS \
PARAM_VALUE (PARAM_MAX_UNROLLED_INSNS)
#endif
/* ! GCC_PARAMS_H */
gcc/unroll.c
View file @
03e9dbc9
...
...
@@ -147,6 +147,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "hard-reg-set.h"
#include "basic-block.h"
#include "predict.h"
#include "params.h"
/* The prime factors looked for when trying to unroll a loop by some
number which is modulo the total number of iterations. Just checking
...
...
@@ -169,13 +170,6 @@ enum unroll_types
UNROLL_NAIVE
};
/* This controls which loops are unrolled, and by how much we unroll
them. */
#ifndef MAX_UNROLLED_INSNS
#define MAX_UNROLLED_INSNS 100
#endif
/* Indexed by register number, if non-zero, then it contains a pointer
to a struct induction for a DEST_REG giv which has been combined with
one of more address givs. This is needed because whenever such a DEST_REG
...
...
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