Commit 3167de5b by Andrew MacLeod Committed by Andrew Macleod

output.h (force_data_section): New prototype.

	* output.h (force_data_section): New prototype.
	* varasm.c (force_data_section): New function to force the
	data section, regardless of what in_section thinks.
	* dwarf2out.c (output_call_frame_info): Call force_data_section
	since varasm may not realize we've changes sections.

From-SVN: r24311
parent 80599fd9
Mon Dec 14 17:13:36 EST 1998 Andrew MacLeod <amacleod@cygnus.com>
* output.h (force_data_section): New prototype.
* varasm.c (force_data_section): New function to force the
data section, regardless of what in_section thinks.
* dwarf2out.c (output_call_frame_info): Call force_data_section
since varasm may not realize we've changes sections.
Mon Dec 14 14:09:34 1998 Nick Clifton <nickc@cygnus.com> Mon Dec 14 14:09:34 1998 Nick Clifton <nickc@cygnus.com>
* reload1.c (reload): Delete REG_RETVAL and REG_LIBCALL notes * reload1.c (reload): Delete REG_RETVAL and REG_LIBCALL notes
......
...@@ -1691,7 +1691,7 @@ output_call_frame_info (for_eh) ...@@ -1691,7 +1691,7 @@ output_call_frame_info (for_eh)
#else #else
tree label = get_file_function_name ('F'); tree label = get_file_function_name ('F');
data_section (); force_data_section ();
ASM_OUTPUT_ALIGN (asm_out_file, floor_log2 (PTR_SIZE)); ASM_OUTPUT_ALIGN (asm_out_file, floor_log2 (PTR_SIZE));
ASM_GLOBALIZE_LABEL (asm_out_file, IDENTIFIER_POINTER (label)); ASM_GLOBALIZE_LABEL (asm_out_file, IDENTIFIER_POINTER (label));
ASM_OUTPUT_LABEL (asm_out_file, IDENTIFIER_POINTER (label)); ASM_OUTPUT_LABEL (asm_out_file, IDENTIFIER_POINTER (label));
......
...@@ -142,6 +142,9 @@ extern void text_section PROTO((void)); ...@@ -142,6 +142,9 @@ extern void text_section PROTO((void));
/* Tell assembler to switch to data section. */ /* Tell assembler to switch to data section. */
extern void data_section PROTO((void)); extern void data_section PROTO((void));
/* Tell assembler to make sure its in the data section. */
extern void force_data_section PROTO((void));
/* Tell assembler to switch to read-only data section. This is normally /* Tell assembler to switch to read-only data section. This is normally
the text section. */ the text section. */
extern void readonly_data_section PROTO((void)); extern void readonly_data_section PROTO((void));
......
...@@ -216,6 +216,15 @@ data_section () ...@@ -216,6 +216,15 @@ data_section ()
in_section = in_data; in_section = in_data;
} }
} }
/* Tell assembler to ALWAYS switch to data section, in case
it's not sure where it it. */
void
force_data_section ()
{
in_section = no_section;
data_section ();
}
/* Tell assembler to switch to read-only data section. This is normally /* Tell assembler to switch to read-only data section. This is normally
the text section. */ the text section. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment