Line 1... |
Line 1... |
/* as.c - GAS main program.
|
/* as.c - GAS main program.
|
Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
|
Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
|
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
|
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
|
2010, 2011
|
2010, 2011, 2012
|
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
|
|
This file is part of GAS, the GNU Assembler.
|
This file is part of GAS, the GNU Assembler.
|
|
|
GAS is free software; you can redistribute it and/or modify
|
GAS is free software; you can redistribute it and/or modify
|
Line 621... |
Line 621... |
break;
|
break;
|
|
|
case OPTION_VERSION:
|
case OPTION_VERSION:
|
/* This output is intended to follow the GNU standards document. */
|
/* This output is intended to follow the GNU standards document. */
|
printf (_("GNU assembler %s\n"), BFD_VERSION_STRING);
|
printf (_("GNU assembler %s\n"), BFD_VERSION_STRING);
|
printf (_("Copyright 2011 Free Software Foundation, Inc.\n"));
|
printf (_("Copyright 2012 Free Software Foundation, Inc.\n"));
|
printf (_("\
|
printf (_("\
|
This program is free software; you may redistribute it under the terms of\n\
|
This program is free software; you may redistribute it under the terms of\n\
|
the GNU General Public License version 3 or later.\n\
|
the GNU General Public License version 3 or later.\n\
|
This program has absolutely no warranty.\n"));
|
This program has absolutely no warranty.\n"));
|
printf (_("This assembler was configured for a target of `%s'.\n"),
|
printf (_("This assembler was configured for a target of `%s'.\n"),
|
Line 1035... |
Line 1035... |
|
|
static void
|
static void
|
perform_an_assembly_pass (int argc, char ** argv)
|
perform_an_assembly_pass (int argc, char ** argv)
|
{
|
{
|
int saw_a_file = 0;
|
int saw_a_file = 0;
|
|
#ifndef OBJ_MACH_O
|
flagword applicable;
|
flagword applicable;
|
|
#endif
|
|
|
need_pass_2 = 0;
|
need_pass_2 = 0;
|
|
|
|
#ifndef OBJ_MACH_O
|
/* Create the standard sections, and those the assembler uses
|
/* Create the standard sections, and those the assembler uses
|
internally. */
|
internally. */
|
text_section = subseg_new (TEXT_SECTION_NAME, 0);
|
text_section = subseg_new (TEXT_SECTION_NAME, 0);
|
data_section = subseg_new (DATA_SECTION_NAME, 0);
|
data_section = subseg_new (DATA_SECTION_NAME, 0);
|
bss_section = subseg_new (BSS_SECTION_NAME, 0);
|
bss_section = subseg_new (BSS_SECTION_NAME, 0);
|
Line 1055... |
Line 1058... |
bfd_set_section_flags (stdoutput, data_section,
|
bfd_set_section_flags (stdoutput, data_section,
|
applicable & (SEC_ALLOC | SEC_LOAD | SEC_RELOC
|
applicable & (SEC_ALLOC | SEC_LOAD | SEC_RELOC
|
| SEC_DATA));
|
| SEC_DATA));
|
bfd_set_section_flags (stdoutput, bss_section, applicable & SEC_ALLOC);
|
bfd_set_section_flags (stdoutput, bss_section, applicable & SEC_ALLOC);
|
seg_info (bss_section)->bss = 1;
|
seg_info (bss_section)->bss = 1;
|
|
#endif
|
subseg_new (BFD_ABS_SECTION_NAME, 0);
|
subseg_new (BFD_ABS_SECTION_NAME, 0);
|
subseg_new (BFD_UND_SECTION_NAME, 0);
|
subseg_new (BFD_UND_SECTION_NAME, 0);
|
reg_section = subseg_new ("*GAS `reg' section*", 0);
|
reg_section = subseg_new ("*GAS `reg' section*", 0);
|
expr_section = subseg_new ("*GAS `expr' section*", 0);
|
expr_section = subseg_new ("*GAS `expr' section*", 0);
|
|
|
|
#ifndef OBJ_MACH_O
|
subseg_set (text_section, 0);
|
subseg_set (text_section, 0);
|
|
#endif
|
|
|
/* This may add symbol table entries, which requires having an open BFD,
|
/* This may add symbol table entries, which requires having an open BFD,
|
and sections already created. */
|
and sections already created. */
|
md_begin ();
|
md_begin ();
|
|
|