aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Sayle <roger@eyesopen.com>2006-04-11 23:53:39 +0000
committerRoger Sayle <roger@eyesopen.com>2006-04-11 23:53:39 +0000
commite38cc36aa158fb93049abd68b776ac86627561d6 (patch)
tree33ff13aac4f351a36aea5b4a2b51b1e6e1d9e0dc
parentf62dafb57a4682b2fdfa7c9e0a239c9172a73b31 (diff)
* dwarf2out.c (output_call_frame_info): Create debug_frame_section
if it hasn't been initialized by dwarf2out_init. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@112871 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/dwarf2out.c7
2 files changed, 11 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b03e660e046..bca74da15cd 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2006-04-11 Roger Sayle <roger@eyesopen.com>
+
+ * dwarf2out.c (output_call_frame_info): Create debug_frame_section
+ if it hasn't been initialized by dwarf2out_init.
+
2006-04-11 John David Anglin <dava.anglin@nrc-cnrc.gc.ca>
* pa.md (MAX_12BIT_OFFSET, MAX_17BIT_OFFSET): Define and use new
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index e3cb00932e7..3f857b6857f 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -2218,7 +2218,12 @@ output_call_frame_info (int for_eh)
if (for_eh)
switch_to_eh_frame_section ();
else
- switch_to_section (debug_frame_section);
+ {
+ if (!debug_frame_section)
+ debug_frame_section = get_section (DEBUG_FRAME_SECTION,
+ SECTION_DEBUG, NULL);
+ switch_to_section (debug_frame_section);
+ }
ASM_GENERATE_INTERNAL_LABEL (section_start_label, FRAME_BEGIN_LABEL, for_eh);
ASM_OUTPUT_LABEL (asm_out_file, section_start_label);