projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix another PIC problem
[libfirm]
/
ir
/
be
/
bestabs.c
diff --git
a/ir/be/bestabs.c
b/ir/be/bestabs.c
index
6b5fe3c
..
a51fdfd
100644
(file)
--- a/
ir/be/bestabs.c
+++ b/
ir/be/bestabs.c
@@
-682,7
+682,7
@@
static void stabs_method_begin(dbg_handle *handle, ir_entity *ent, const be_stac
type_num = get_type_number(h, rtp);
be_emit_irprintf("\t.stabs\t\"%s:%c%u\",%u,0,0,%s\n",
get_entity_name(ent),
type_num = get_type_number(h, rtp);
be_emit_irprintf("\t.stabs\t\"%s:%c%u\",%u,0,0,%s\n",
get_entity_name(ent),
-
entity_is_externally_visible(ent) ? 'F' : 'f
',
+
get_entity_visibility(ent) == ir_visibility_local ? 'f' : 'F
',
type_num,
N_FUN,
get_entity_ld_name(ent));
type_num,
N_FUN,
get_entity_ld_name(ent));
@@
-794,11
+794,7
@@
static void stabs_variable(dbg_handle *handle, ir_entity *ent) {
unsigned tp_num = get_type_number(h, get_entity_type(ent));
char buf[1024];
unsigned tp_num = get_type_number(h, get_entity_type(ent));
char buf[1024];
- if (entity_is_externally_visible(ent)) {
- /* a global variable */
- snprintf(buf, sizeof(buf), "\t.stabs\t\"%s:G%u\",%d,0,0,0\n",
- get_entity_name(ent), tp_num, N_GSYM);
- } else {
+ if (get_entity_visibility(ent) == ir_visibility_local) {
/* some kind of local */
ir_linkage linkage = get_entity_linkage(ent);
int kind = N_STSYM;
/* some kind of local */
ir_linkage linkage = get_entity_linkage(ent);
int kind = N_STSYM;
@@
-807,6
+803,10
@@
static void stabs_variable(dbg_handle *handle, ir_entity *ent) {
kind = N_ROSYM;
snprintf(buf, sizeof(buf), "\t.stabs\t\"%s:S%u\",%d,0,0,%s\n",
get_entity_name(ent), tp_num, kind, get_entity_ld_name(ent));
kind = N_ROSYM;
snprintf(buf, sizeof(buf), "\t.stabs\t\"%s:S%u\",%d,0,0,%s\n",
get_entity_name(ent), tp_num, kind, get_entity_ld_name(ent));
+ } else {
+ /* a global variable */
+ snprintf(buf, sizeof(buf), "\t.stabs\t\"%s:G%u\",%d,0,0,0\n",
+ get_entity_name(ent), tp_num, N_GSYM);
}
buf[sizeof(buf) - 1] = '\0';
}
buf[sizeof(buf) - 1] = '\0';