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
01e2750c
Commit
01e2750c
authored
May 15, 1992
by
Richard Stallman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
*** empty log message ***
From-SVN: r993
parent
cebfccda
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
45 additions
and
11 deletions
+45
-11
gcc/config/svr4.h
+4
-1
gcc/dbxout.c
+41
-10
No files found.
gcc/config/svr4.h
View file @
01e2750c
...
@@ -249,7 +249,10 @@ do { \
...
@@ -249,7 +249,10 @@ do { \
/* #define MULTIBYTE_CHARS */
/* #define MULTIBYTE_CHARS */
#undef ASM_BYTE_OP
#undef ASM_BYTE_OP
#define ASM_BYTE_OP "\t.byte"
#define ASM_BYTE_OP ".byte"
#undef SET_ASM_OP
#define SET_ASM_OP ".set"
/* This is how to begin an assembly language file. Most svr4 assemblers want
/* This is how to begin an assembly language file. Most svr4 assemblers want
at least a .file directive to come first, and some want to see a .version
at least a .file directive to come first, and some want to see a .version
...
...
gcc/dbxout.c
View file @
01e2750c
...
@@ -94,8 +94,8 @@ extern int errno;
...
@@ -94,8 +94,8 @@ extern int errno;
#define ASM_STABN_OP ".stabn"
#define ASM_STABN_OP ".stabn"
#endif
#endif
#ifndef DBX_DECL_STABS_CODE
#ifndef DBX_
TYPE_
DECL_STABS_CODE
#define DBX_DECL_STABS_CODE N_LSYM
#define DBX_
TYPE_
DECL_STABS_CODE N_LSYM
#endif
#endif
#ifndef DBX_STATIC_CONST_VAR_CODE
#ifndef DBX_STATIC_CONST_VAR_CODE
...
@@ -110,6 +110,10 @@ extern int errno;
...
@@ -110,6 +110,10 @@ extern int errno;
#define DBX_REGPARM_STABS_LETTER 'P'
#define DBX_REGPARM_STABS_LETTER 'P'
#endif
#endif
#ifndef DBX_MEMPARM_STABS_LETTER
#define DBX_MEMPARM_STABS_LETTER 'p'
#endif
/* Nonzero means if the type has methods, only output debugging
/* Nonzero means if the type has methods, only output debugging
information if methods are actually written to the asm file. */
information if methods are actually written to the asm file. */
...
@@ -1098,6 +1102,9 @@ dbxout_type (type, full, show_arg_types)
...
@@ -1098,6 +1102,9 @@ dbxout_type (type, full, show_arg_types)
fprintf
(
asmfile
,
":"
);
fprintf
(
asmfile
,
":"
);
return
;
return
;
}
}
#ifdef DBX_OUTPUT_ENUM
DBX_OUTPUT_ENUM
(
asmfile
,
type
);
#else
putc
(
'e'
,
asmfile
);
putc
(
'e'
,
asmfile
);
CHARS
(
1
);
CHARS
(
1
);
for
(
tem
=
TYPE_VALUES
(
type
);
tem
;
tem
=
TREE_CHAIN
(
tem
))
for
(
tem
=
TYPE_VALUES
(
type
);
tem
;
tem
=
TREE_CHAIN
(
tem
))
...
@@ -1110,6 +1117,7 @@ dbxout_type (type, full, show_arg_types)
...
@@ -1110,6 +1117,7 @@ dbxout_type (type, full, show_arg_types)
}
}
putc
(
';'
,
asmfile
);
putc
(
';'
,
asmfile
);
CHARS
(
1
);
CHARS
(
1
);
#endif
break
;
break
;
case
POINTER_TYPE
:
case
POINTER_TYPE
:
...
@@ -1367,6 +1375,16 @@ dbxout_symbol (decl, local)
...
@@ -1367,6 +1375,16 @@ dbxout_symbol (decl, local)
fprintf
(
asmfile
,
"%s
\"
%s:"
,
ASM_STABS_OP
,
fprintf
(
asmfile
,
"%s
\"
%s:"
,
ASM_STABS_OP
,
IDENTIFIER_POINTER
(
DECL_NAME
(
decl
)));
IDENTIFIER_POINTER
(
DECL_NAME
(
decl
)));
/* #ifndef DBX_NO_EXTRA_TAGS rms: I think this is no longer needed. */
/* This section makes absolutely no sense to me. Why would a tag
ever be needed at this point? The result of this is that any
structure typedef with the tag omitted is treated as if the
tag was given to be the same as the typedef name. Probably
no harm in it, unless the programmer used the same name for
the tag of a *different* structure. At any rate, Alliant's
debugger would want the tag output before the typedef, so
this code still loses. -- hyc */
/* Short cut way to output a tag also. */
/* Short cut way to output a tag also. */
if
((
TREE_CODE
(
type
)
==
RECORD_TYPE
if
((
TREE_CODE
(
type
)
==
RECORD_TYPE
||
TREE_CODE
(
type
)
==
UNION_TYPE
)
||
TREE_CODE
(
type
)
==
UNION_TYPE
)
...
@@ -1380,9 +1398,10 @@ dbxout_symbol (decl, local)
...
@@ -1380,9 +1398,10 @@ dbxout_symbol (decl, local)
else
else
tag_needed
=
1
;
tag_needed
=
1
;
}
}
/* #endif */
putc
(
't'
,
asmfile
);
putc
(
't'
,
asmfile
);
current_sym_code
=
DBX_DECL_STABS_CODE
;
current_sym_code
=
DBX_
TYPE_
DECL_STABS_CODE
;
dbxout_type
(
type
,
1
,
0
);
dbxout_type
(
type
,
1
,
0
);
dbxout_finish_symbol
(
decl
);
dbxout_finish_symbol
(
decl
);
...
@@ -1400,7 +1419,7 @@ dbxout_symbol (decl, local)
...
@@ -1400,7 +1419,7 @@ dbxout_symbol (decl, local)
if
(
TREE_CODE
(
name
)
==
TYPE_DECL
)
if
(
TREE_CODE
(
name
)
==
TYPE_DECL
)
name
=
DECL_NAME
(
name
);
name
=
DECL_NAME
(
name
);
current_sym_code
=
DBX_DECL_STABS_CODE
;
current_sym_code
=
DBX_
TYPE_
DECL_STABS_CODE
;
current_sym_value
=
0
;
current_sym_value
=
0
;
current_sym_addr
=
0
;
current_sym_addr
=
0
;
current_sym_nchars
=
2
+
IDENTIFIER_LENGTH
(
name
);
current_sym_nchars
=
2
+
IDENTIFIER_LENGTH
(
name
);
...
@@ -1771,13 +1790,15 @@ dbxout_parms (parms)
...
@@ -1771,13 +1790,15 @@ dbxout_parms (parms)
{
{
current_sym_nchars
=
2
+
IDENTIFIER_LENGTH
(
DECL_NAME
(
parms
));
current_sym_nchars
=
2
+
IDENTIFIER_LENGTH
(
DECL_NAME
(
parms
));
fprintf
(
asmfile
,
"%s
\"
%s:p"
,
ASM_STABS_OP
,
fprintf
(
asmfile
,
"%s
\"
%s:%c"
,
ASM_STABS_OP
,
IDENTIFIER_POINTER
(
DECL_NAME
(
parms
)));
IDENTIFIER_POINTER
(
DECL_NAME
(
parms
)),
DBX_MEMPARM_STABS_LETTER
);
}
}
else
else
{
{
current_sym_nchars
=
8
;
current_sym_nchars
=
8
;
fprintf
(
asmfile
,
"%s
\"
(anon):p"
,
ASM_STABS_OP
);
fprintf
(
asmfile
,
"%s
\"
(anon):%c"
,
ASM_STABS_OP
,
DBX_MEMPARM_STABS_LETTER
);
}
}
if
(
GET_CODE
(
DECL_RTL
(
parms
))
==
REG
if
(
GET_CODE
(
DECL_RTL
(
parms
))
==
REG
...
@@ -1917,13 +1938,15 @@ dbxout_parms (parms)
...
@@ -1917,13 +1938,15 @@ dbxout_parms (parms)
{
{
current_sym_nchars
=
2
+
strlen
(
IDENTIFIER_POINTER
(
DECL_NAME
(
parms
)));
current_sym_nchars
=
2
+
strlen
(
IDENTIFIER_POINTER
(
DECL_NAME
(
parms
)));
fprintf
(
asmfile
,
"%s
\"
%s:p"
,
ASM_STABS_OP
,
fprintf
(
asmfile
,
"%s
\"
%s:%c"
,
ASM_STABS_OP
,
IDENTIFIER_POINTER
(
DECL_NAME
(
parms
)));
IDENTIFIER_POINTER
(
DECL_NAME
(
parms
)),
DBX_MEMPARM_STABS_LETTER
);
}
}
else
else
{
{
current_sym_nchars
=
8
;
current_sym_nchars
=
8
;
fprintf
(
asmfile
,
"%s
\"
(anon):p"
,
ASM_STABS_OP
);
fprintf
(
asmfile
,
"%s
\"
(anon):%c"
,
ASM_STABS_OP
,
DBX_MEMPARM_STABS_LETTER
);
}
}
current_sym_value
current_sym_value
...
@@ -2121,9 +2144,13 @@ dbxout_block (block, depth, args)
...
@@ -2121,9 +2144,13 @@ dbxout_block (block, depth, args)
}
}
}
}
#ifdef DBX_OUTPUT_LBRAC
DBX_OUTPUT_LBRAC
(
asmfile
,
buf
);
#else
fprintf
(
asmfile
,
"%s %d,0,0,"
,
ASM_STABN_OP
,
N_LBRAC
);
fprintf
(
asmfile
,
"%s %d,0,0,"
,
ASM_STABN_OP
,
N_LBRAC
);
assemble_name
(
asmfile
,
buf
);
assemble_name
(
asmfile
,
buf
);
fprintf
(
asmfile
,
"
\n
"
);
fprintf
(
asmfile
,
"
\n
"
);
#endif
}
}
else
if
(
depth
>
0
)
else
if
(
depth
>
0
)
/* Count blocks the same way regardless of debug_info_level. */
/* Count blocks the same way regardless of debug_info_level. */
...
@@ -2146,9 +2173,13 @@ dbxout_block (block, depth, args)
...
@@ -2146,9 +2173,13 @@ dbxout_block (block, depth, args)
{
{
char
buf
[
20
];
char
buf
[
20
];
ASM_GENERATE_INTERNAL_LABEL
(
buf
,
"LBE"
,
blocknum
);
ASM_GENERATE_INTERNAL_LABEL
(
buf
,
"LBE"
,
blocknum
);
#ifdef DBX_OUTPUT_RBRAC
DBX_OUTPUT_RBRAC
(
asmfile
,
buf
);
#else
fprintf
(
asmfile
,
"%s %d,0,0,"
,
ASM_STABN_OP
,
N_RBRAC
);
fprintf
(
asmfile
,
"%s %d,0,0,"
,
ASM_STABN_OP
,
N_RBRAC
);
assemble_name
(
asmfile
,
buf
);
assemble_name
(
asmfile
,
buf
);
fprintf
(
asmfile
,
"
\n
"
);
fprintf
(
asmfile
,
"
\n
"
);
#endif
}
}
}
}
block
=
BLOCK_CHAIN
(
block
);
block
=
BLOCK_CHAIN
(
block
);
...
...
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