Chapter 2. Overview
15
 relax |  no relax
Enable or disable instruction relaxation. This is enabled by default. Note: In the current imple 
mentation, these options also control whether assembler optimizations are performed, making
these options equivalent to
 generics
and
 no generics
.
 generics |  no generics
Enable or disable all assembler transformations of Xtensa instructions. The default is
 generics
;
 no generics
should be used only in the rare cases when the instructions must
be exactly as specified in the assembly source.
 text section literals |  no text section literals
With
 text section literals
, literal pools are interspersed in the text section. The default
is
 no text section literals
, which places literals in a separate section in the output file.
 target align |  no target align
Enable or disable automatic alignment to reduce branch penalties at the expense of some code
density. The default is
 target align
.
 longcalls |  no longcalls
Enable or disable transformation of call instructions to allow calls across a greater range of
addresses. The default is
 no longcalls
.
2.1. Structure of this Manual
This manual is intended to describe what you need to know to use gnu
as
. We cover the syntax
expected in source files, including notation for symbols, constants, and expressions; the directives
that
as
understands; and of course how to invoke
as
.
This manual also describes some of the machine dependent features of various flavors of the assem 
bler.
On the other hand, this manual is not intended as an introduction to programming in assembly
language  let alone programming in general! In a similar vein, we make no attempt to introduce the
machine architecture; we do not describe the instruction set, standard mnemonics, registers or address 
ing modes that are standard to a particular architecture. You may want to consult the manufacturer's
machine architecture manual for this information.
2.2. The GNU Assembler
gnu
as
is really a family of assemblers. If you use (or have used) the gnu assembler on one archi 
tecture, you should find a fairly similar environment when you use it on another architecture. Each
version has much in common with the others, including object file formats, most assembler directives
(often called pseudo ops) and assembler syntax.
as
is primarily intended to assemble the output of the gnu C compiler
gcc
for use by the linker
ld
.
Nevertheless, we've tried to make
as
assemble correctly everything that other assemblers for the same
machine would assemble. Any exceptions are documented explicitly (Chapter 9 Machine Dependent
Features). This doesn't mean
as
always uses the same syntax as another assembler for the same
architecture; for example, we know of several incompatible versions of 680x0 assembly language
syntax.
Unlike older assemblers,
as
is designed to assemble a source program in one pass of the source file.
This has a subtle impact on the .org directive (Section 8.65
.org new lc, fill
).






footer




 

 

 

 

 Home | About Us | Network | Services | Support | FAQ | Control Panel | Order Online | Sitemap | Contact

canadian web hosting

 

Our partners: PHP: Hypertext Preprocessor Best Web Hosting Java Web Hosting Inexpensive Web Hosting  Jsp Web Hosting

Cheapest Web Hosting Jsp Hosting Cheap Hosting

Visionwebhosting.net Business web hosting division of Web Design Plus. All rights reserved