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
994fe660
Commit
994fe660
authored
Aug 11, 2001
by
Ulrich Weigand
Committed by
Ulrich Weigand
Aug 11, 2001
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Coding style cleanup.
From-SVN: r44811
parent
f314b9b1
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
77 additions
and
80 deletions
+77
-80
gcc/ChangeLog
+6
-0
gcc/config/s390/linux.h
+3
-3
gcc/config/s390/s390-protos.h
+31
-45
gcc/config/s390/s390.c
+0
-0
gcc/config/s390/s390.h
+22
-24
gcc/config/s390/s390.md
+15
-3
gcc/config/s390/t-linux
+0
-5
No files found.
gcc/ChangeLog
View file @
994fe660
2001
-
08
-
11
Ulrich
Weigand
<
uweigand
@de
.
ibm
.
com
>
*
s390
.
c
,
s390
.
h
,
s390
.
md
,
s390
-
protos
.
h
,
linux
.
h
,
t
-
linux
:
Clean
up
code
:
add
missing
comments
and
prototypes
,
fix
warnings
,
remove
obsolete
code
,
fix
spacing
to
conform
to
coding
style
.
2001
-
08
-
11
Ulrich
Weigand
<
uweigand
@de
.
ibm
.
com
>
*
config
/
s390
/
s390
.
c
(
targetm
)
:
Define
TARGET_ASM_OPEN_PAREN
and
TARGET_ASM_CLOSE_PAREN
.
(
regclass_map
)
:
CC
register
belongs
to
class
NO_REGS
.
...
...
gcc/config/s390/linux.h
View file @
994fe660
...
...
@@ -154,7 +154,7 @@ do { fprintf ((FILE), "%s\t", ASM_QUAD); \
#undef ASM_OUTPUT_INT
#define ASM_OUTPUT_INT(FILE, VALUE) \
do { fprintf (FILE, "%s\t", ASM_LONG); \
output_addr_const (FILE,
(VALUE));
\
output_addr_const (FILE,
(VALUE));
\
putc ('\n',FILE); \
} while (0)
...
...
@@ -163,7 +163,7 @@ do { fprintf (FILE, "%s\t", ASM_LONG); \
#define ASM_OUTPUT_SHORT(FILE, VALUE) \
( fprintf (FILE, "%s ", ASM_SHORT), \
output_addr_const (FILE,
(VALUE)),
\
output_addr_const (FILE,
(VALUE)),
\
putc ('\n',FILE))
#define ASM_OUTPUT_CHAR(FILE, VALUE) \
...
...
@@ -284,7 +284,7 @@ do { \
/* This is how to output a command to make the user-level label named NAME
defined for reference from other files. */
#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
#define ASM_GLOBALIZE_LABEL(FILE,
NAME) \
(fputs (".globl ", FILE), assemble_name (FILE, NAME), fputs ("\n", FILE))
#define DBX_REGISTER_NUMBER(REGNO) (REGNO)
...
...
gcc/config/s390/s390-protos.h
View file @
994fe660
...
...
@@ -19,70 +19,56 @@ along with GNU CC; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/* Declare functions in s390.c
and linux.c
*/
/* Declare functions in s390.c
.
*/
#ifdef RTX_CODE
#ifdef TREE_CODE
extern
void
init_cumulative_args
PARAMS
((
CUMULATIVE_ARGS
*
,
tree
,
rtx
,
int
));
extern
void
s390_va_start
PARAMS
((
int
,
tree
,
rtx
));
#endif
/* TREE_CODE */
extern
void
optimization_options
PARAMS
((
int
,
int
));
extern
int
s390_arg_frame_offset
PARAMS
((
void
));
extern
void
s390_function_prologue
PARAMS
((
FILE
*
,
HOST_WIDE_INT
));
extern
void
s390_function_epilogue
PARAMS
((
FILE
*
,
HOST_WIDE_INT
));
#ifdef RTX_CODE
extern
int
const0_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
const1_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
larl_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
fp_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
s_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
larl_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
r_or_im8_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
r_or_s_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
r_or_s_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
r_or_s_or_im8_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
r_or_x_or_im16_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
r_or_im8_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
tmxx_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
bras_sym_operand
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
load_multiple_operation
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
store_multiple_operation
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
dead_p
PARAMS
((
rtx
,
rtx
));
extern
void
print_operand
PARAMS
((
FILE
*
,
rtx
,
char
));
extern
void
print_operand_address
PARAMS
((
FILE
*
,
rtx
));
extern
int
s390_match_ccmode
PARAMS
((
rtx
,
enum
machine_mode
));
extern
int
symbolic_reference_mentioned_p
PARAMS
((
rtx
));
extern
int
legitimate_pic_operand_p
PARAMS
((
rtx
));
extern
int
legitimate_constant_p
PARAMS
((
rtx
));
extern
int
legitimate_address_p
PARAMS
((
enum
machine_mode
,
rtx
,
int
));
extern
rtx
legitimize_pic_address
PARAMS
((
rtx
,
rtx
));
extern
rtx
legitimize_address
PARAMS
((
rtx
,
rtx
,
enum
machine_mode
));
extern
void
emit_pic_move
PARAMS
((
rtx
*
,
enum
machine_mode
));
extern
int
unsigned_comparison_operator
PARAMS
((
rtx
));
extern
int
unsigned_jump_follows_p
PARAMS
((
rtx
));
extern
void
update_cc
PARAMS
((
rtx
,
rtx
));
extern
void
s390_initialize_trampoline
PARAMS
((
rtx
,
rtx
,
rtx
));
extern
void
s390_output_symbolic_const
PARAMS
((
FILE
*
,
rtx
));
extern
void
print_operand_address
PARAMS
((
FILE
*
,
rtx
));
extern
void
print_operand
PARAMS
((
FILE
*
,
rtx
,
int
));
extern
int
s390_adjust_cost
PARAMS
((
rtx
,
rtx
,
rtx
,
int
));
extern
int
s390_stop_dump_lit_p
PARAMS
((
rtx
));
extern
void
s390_dump_literal_pool
PARAMS
((
rtx
,
rtx
));
extern
void
s390_expand_eh_epilogue
PARAMS
((
rtx
,
rtx
,
rtx
));
extern
void
s390_asm_output_external_libcall
PARAMS
((
FILE
*
,
rtx
));
extern
void
s390_trampoline_template
PARAMS
((
FILE
*
));
extern
void
s390_initialize_trampoline
PARAMS
((
rtx
,
rtx
,
rtx
));
#endif
/* RTX_CODE */
#ifdef TREE_CODE
extern
void
s390_function_arg_advance
PARAMS
((
CUMULATIVE_ARGS
*
,
enum
machine_mode
,
tree
,
int
));
extern
struct
rtx_def
*
s390_function_arg
PARAMS
((
CUMULATIVE_ARGS
*
,
enum
machine_mode
,
tree
,
int
));
extern
int
s390_function_arg_partial_nregs
PARAMS
((
CUMULATIVE_ARGS
*
,
enum
machine_mode
,
tree
,
int
));
extern
void
s390_asm_output_pool_prologue
PARAMS
((
FILE
*
,
const
char
*
,
tree
,
int
));
extern
int
s390_function_arg_pass_by_reference
PARAMS
((
enum
machine_mode
,
tree
));
extern
void
setup_incoming_varargs
PARAMS
((
CUMULATIVE_ARGS
*
,
enum
machine_mode
,
tree
,
int
*
,
int
));
extern
struct
rtx_def
*
s390_va_arg
PARAMS
((
tree
,
tree
));
extern
union
tree_node
*
s390_build_va_list
PARAMS
((
void
));
extern
void
s390_asm_output_pool_prologue
PARAMS
((
FILE
*
,
char
*
,
tree
,
int
));
extern
void
encode_section_info
PARAMS
((
tree
));
extern
void
s390_function_arg_advance
PARAMS
((
CUMULATIVE_ARGS
*
,
enum
machine_mode
,
tree
,
int
));
extern
tree
s390_build_va_list
PARAMS
((
void
));
#ifdef RTX_CODE
extern
rtx
s390_function_arg
PARAMS
((
CUMULATIVE_ARGS
*
,
enum
machine_mode
,
tree
,
int
));
extern
void
s390_va_start
PARAMS
((
int
,
tree
,
rtx
));
extern
rtx
s390_va_arg
PARAMS
((
tree
,
tree
));
#endif
/* RTX_CODE */
#endif
/* TREE_CODE */
extern
void
s390_trampoline_template
PARAMS
((
FILE
*
));
extern
void
s390_function_prologue
PARAMS
((
FILE
*
,
HOST_WIDE_INT
));
extern
void
s390_function_epilogue
PARAMS
((
FILE
*
,
HOST_WIDE_INT
));
extern
void
s390_final_chunkify
PARAMS
((
int
));
extern
int
s390_arg_frame_offset
PARAMS
((
void
));
gcc/config/s390/s390.c
View file @
994fe660
This diff is collapsed.
Click to expand it.
gcc/config/s390/s390.h
View file @
994fe660
...
...
@@ -48,22 +48,22 @@ extern int target_flags;
An empty string NAME is used to identify the default VALUE. */
#define TARGET_SWITCHES \
{ { "hard-float", 1,N_("Use hardware fp")}, \
{ "soft-float", -1,N_("Don't use hardware fp")}, \
{ "backchain", 2,N_("Set backchain")}, \
{ "no-backchain", -2,N_("Don't set backchain (faster, but debug harder")}, \
{ "small-exec", 4,N_("Use bras for execucable < 64k")}, \
{ "no-small-exec",-4,N_("Don't use bras")}, \
{ "debug", 8,N_("Additional debug prints")}, \
{ "no-debug", -8,N_("Don't print additional debug prints")}, \
{ "64", 16,N_("64 bit mode")}, \
{ "31", -16,N_("31 bit mode")}, \
{ "mvcle", 32,N_("mvcle use")}, \
{ "no-mvcle", -32,N_("mvc&ex")}, \
{ { "hard-float", 1,
N_("Use hardware fp")}, \
{ "soft-float", -1,
N_("Don't use hardware fp")}, \
{ "backchain", 2,
N_("Set backchain")}, \
{ "no-backchain", -2,
N_("Don't set backchain (faster, but debug harder")}, \
{ "small-exec", 4,
N_("Use bras for execucable < 64k")}, \
{ "no-small-exec",-4,
N_("Don't use bras")}, \
{ "debug", 8,
N_("Additional debug prints")}, \
{ "no-debug", -8,
N_("Don't print additional debug prints")}, \
{ "64", 16,
N_("64 bit mode")}, \
{ "31", -16,
N_("31 bit mode")}, \
{ "mvcle", 32,
N_("mvcle use")}, \
{ "no-mvcle", -32,
N_("mvc&ex")}, \
{ "", TARGET_DEFAULT, 0 } }
/* Define this to change the optimizations performed by default. */
#define OPTIMIZATION_OPTIONS(LEVEL,
SIZE) optimization_options(LEVEL,
SIZE)
#define OPTIMIZATION_OPTIONS(LEVEL,
SIZE) optimization_options(LEVEL,
SIZE)
/* The current function count for create unique internal labels. */
...
...
@@ -213,7 +213,7 @@ if (INTEGRAL_MODE_P (MODE) && \
/* Standard register usage. */
#define INT_REGNO_P(N) ( (N) >= 0 && (N) < 16 )
#define INT_REGNO_P(N) ( (
int)(
N) >= 0 && (N) < 16 )
#ifdef IEEE_FLOAT
#define FLOAT_REGNO_P(N) ( (N) >= 16 && (N) < 32 )
#else
...
...
@@ -682,14 +682,14 @@ CUMULATIVE_ARGS;
may not be available.) */
#define FUNCTION_ARG_ADVANCE(CUM, MODE, TYPE, NAMED) \
s390_function_arg_advance(&CUM, MODE, TYPE, NAMED)
s390_function_arg_advance
(&CUM, MODE, TYPE, NAMED)
/* Define where to put the arguments to a function. Value is zero to push
the argument on the stack, or a hard register in which to store the
argument. */
#define FUNCTION_ARG(CUM, MODE, TYPE, NAMED) \
s390_function_arg(&CUM, MODE, TYPE, NAMED)
s390_function_arg
(&CUM, MODE, TYPE, NAMED)
/* Define where to expect the arguments of a function. Value is zero, if
the argument is on the stack, or a hard register in which the argument
...
...
@@ -808,7 +808,7 @@ CUMULATIVE_ARGS;
#define FUNCTION_PROFILER(FILE, LABELNO) \
do { \
extern rtx s390_profile[]; \
extern
s390_pool_count;
\
extern
int s390_pool_count;
\
rtx tmp; \
static char label[128]; \
fprintf (FILE, "# function profiler \n"); \
...
...
@@ -1101,7 +1101,7 @@ do \
{ \
rtx tmp[1]; \
fprintf (FILE, "# block profiler %d block %d \n", \
profile_block_flag,BLOCKNO); \
profile_block_flag,
BLOCKNO); \
output_asm_insn ("ipm 14", tmp); \
output_asm_insn ("aghi 15,-224", tmp); \
output_asm_insn ("stmg 14,5,160(15)", tmp); \
...
...
@@ -1325,7 +1325,7 @@ do { \
((REGNO) < 16 || (unsigned) reg_renumber[REGNO] < 16)
#define REGNO_OK_FOR_FP_P(REGNO) \
FLOAT_REGNO_P(REGNO)
FLOAT_REGNO_P
(REGNO)
/* Now macros that check whether X is a register and also,
strictly, whether it is in a specified class. */
...
...
@@ -1531,7 +1531,7 @@ do { \
After generation of rtl, the compiler makes no further distinction
between pointers and any other objects of this machine mode. */
#define Pmode (
TARGET_64BIT ? DImode : SImode
)
#define Pmode (
(enum machine_mode) (TARGET_64BIT ? DImode : SImode)
)
/* A function address in a call instruction is a byte address (for
indexing purposes) so give the MEM rtx a byte's mode. */
...
...
@@ -1689,7 +1689,7 @@ do { \
/* Given a comparison code (EQ, NE, etc.) and the first operand of a COMPARE,
return the mode to be used for the comparison. */
#define SELECT_CC_MODE(OP,
X,Y)
\
#define SELECT_CC_MODE(OP,
X, Y)
\
( (OP) == EQ || (OP) == NE ? CCZmode \
: (OP) == LE || (OP) == LT || \
(OP) == GE || (OP) == GT ? CCSmode \
...
...
@@ -1703,8 +1703,6 @@ do { \
since it hasn't been defined! */
extern
struct
rtx_def
*
s390_compare_op0
,
*
s390_compare_op1
;
extern
int
s390_match_ccmode
PARAMS
((
struct
rtx_def
*
,
int
));
/* How to refer to registers in assembler output. This sequence is
...
...
@@ -1809,7 +1807,7 @@ extern int s390_nr_constants;
/* Mark entries referenced by other entries */
\
for (pool = first_pool; pool; pool = pool->next) \
if (pool->mark) \
mark_constants(pool->constant); \
mark_constants
(pool->constant); \
\
s390_asm_output_pool_prologue (FILE, FUNNAME, fndecl, size); \
}
...
...
gcc/config/s390/s390.md
View file @
994fe660
...
...
@@ -796,6 +796,9 @@
case 4: /* m <- m */
return \"mvc\\t%O0(16,%R0),%1\";
default:
abort();
}
}"
[
(set_attr "op_type" "NN,NN,RS,RS,SS")
...
...
@@ -873,6 +876,9 @@
case 4: /* m <- m */
return \"mvc\\t%O0(8,%R0),%1\";
default:
abort();
}
}"
[
(set_attr "op_type" "NN,NN,RS,RS,SS")
...
...
@@ -1085,6 +1091,9 @@
case 6: /* m <- m */
return \"mvc\\t%O0(8,%R0),%1\";
default:
abort();
}
}"
[
(set_attr "op_type" "RR,RX,RX,RS,RS,NN,SS")
...
...
@@ -1132,6 +1141,9 @@
case 3: /* m <- m */
return \"mvc\\t%O0(8,%R0),%1\";
default:
abort();
}
}"
[
(set_attr "op_type" "NN,RS,RS,SS")
...
...
@@ -2442,7 +2454,7 @@
operands
[
1
]
= force_reg (DFmode,operands
[
1
]
);
emit_insn (gen_cmpdf (operands
[
1
]
, force_const_mem (DFmode,
CONST_DOUBLE_FROM_REAL_VALUE (0x80000000, DFmode))));
CONST_DOUBLE_FROM_REAL_VALUE (0x80000000
ULL
, DFmode))));
emit_jump_insn (gen_blt (label1));
emit_insn (gen_subdf3 (temp, operands
[
1
]
, force_const_mem (DFmode,
CONST_DOUBLE_FROM_REAL_VALUE (0x100000000ULL, DFmode))));
...
...
@@ -2583,7 +2595,7 @@
operands
[
1
]
= force_reg (SFmode, operands
[
1
]
);
emit_insn (gen_cmpsf (operands
[
1
]
, force_const_mem (SFmode,
CONST_DOUBLE_FROM_REAL_VALUE (0x80000000, SFmode))));
CONST_DOUBLE_FROM_REAL_VALUE (0x80000000
ULL
, SFmode))));
emit_jump_insn (gen_blt (label1));
emit_insn (gen_subsf3 (temp, operands
[
1
]
, force_const_mem (SFmode,
CONST_DOUBLE_FROM_REAL_VALUE (0x100000000ULL, SFmode))));
...
...
@@ -2669,7 +2681,7 @@
rtx temp = assign_stack_local (BLKmode, 2 * UNITS_PER_WORD, BITS_PER_WORD);
rtx two31 = force_const_mem (DFmode,
gen_rtx (CONST_DOUBLE, VOIDmode, cc0_rtx,
0x80000000
, 0x4E000000
));
0x80000000
U, 0x4E000000U
));
emit_insn (gen_floatsidf2_ibm (operands[0], operands[1], two31, temp));
DONE;
...
...
gcc/config/s390/t-linux
View file @
994fe660
# The crtbegin and crtend must not depend on a small GOT
CRTSTUFF_T_CFLAGS = -O2 -fPIC
linux.o: $(srcdir)/config/s390/linux.c $(CONFIG_H)
$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(srcdir)/config/s390/linux.c
# Compile libgcc2.a with pic.
TARGET_LIBGCC2_CFLAGS = -fPIC -include $(srcdir)/config/s390/fixdfdi.h
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