Rename SEGALIGN to SECTALIGN

"sectalign" is preferred over "segalign"
since it operates over section attributes.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
This commit is contained in:
Cyrill Gorcunov 2010-04-21 13:45:32 +04:00
parent 1f3db76ee9
commit 2ef5c27be7
19 changed files with 34 additions and 35 deletions

View file

@ -48,7 +48,7 @@ list
section
segment
warning
segalign
sectalign
; --- Format-specific directives
export ; outcoff, outobj

View file

@ -161,7 +161,7 @@ USE: smartalign
%unimacro align 1-2+.nolist
%imacro align 1-2+.nolist
segalign %1 ; align a segment as well
sectalign %1 ; align a segment as well
%ifnempty %2
times (((%1) - (($-$$) % (%1))) % (%1)) %2
%else

6
nasm.c
View file

@ -1232,17 +1232,17 @@ static void assemble_file(char *fname, StrList **depend_ptr)
location.segment = seg;
}
break;
case D_SEGALIGN: /* [SEGALIGN n] */
case D_SECTALIGN: /* [SECTALIGN n] */
{
if (*value) {
int align = atoi(value);
unsigned int align = atoi(value);
if (!is_power2(align)) {
nasm_error(ERR_NONFATAL,
"segment alignment `%s' is not power of two",
value);
}
/* callee should be able to handle all details */
ofmt->segalign(location.segment, align);
ofmt->sectalign(location.segment, align);
}
}
break;

6
nasm.h
View file

@ -682,10 +682,10 @@ struct ofmt {
int32_t (*section) (char *name, int pass, int *bits);
/*
* This procedure is called to modify segment alignment,
* there is a trick, the alignment can only increase
* This procedure is called to modify section alignment,
* note there is a trick, the alignment can only increase
*/
void (*segalign)(int32_t seg, int value);
void (*sectalign)(int32_t seg, unsigned int value);
/*
* This procedure is called to modify the segment base values

View file

@ -50,7 +50,7 @@ int null_directive(enum directives directive, char *value, int pass)
return 0;
}
void null_segalign(int32_t seg, int value)
void null_sectalign(int32_t seg, unsigned int value)
{
(void)seg;
(void)value;

View file

@ -924,7 +924,7 @@ struct ofmt of_aout = {
aout_out,
aout_deflabel,
aout_section_names,
null_segalign,
null_sectalign,
aout_segbase,
null_directive,
aout_filename,
@ -947,7 +947,7 @@ struct ofmt of_aoutb = {
aout_out,
aout_deflabel,
aout_section_names,
null_segalign,
null_sectalign,
aout_segbase,
null_directive,
aout_filename,

View file

@ -638,7 +638,7 @@ struct ofmt of_as86 = {
as86_out,
as86_deflabel,
as86_section_names,
null_segalign,
null_sectalign,
as86_segbase,
null_directive,
as86_filename,

View file

@ -1672,7 +1672,7 @@ struct ofmt of_bin = {
bin_out,
bin_deflabel,
bin_secname,
null_segalign,
null_sectalign,
bin_segbase,
bin_directive,
bin_filename,
@ -1691,7 +1691,7 @@ struct ofmt of_ith = {
bin_out,
bin_deflabel,
bin_secname,
null_segalign,
null_sectalign,
bin_segbase,
bin_directive,
ith_filename,
@ -1710,7 +1710,7 @@ struct ofmt of_srec = {
bin_out,
bin_deflabel,
bin_secname,
null_segalign,
null_sectalign,
bin_segbase,
bin_directive,
srec_filename,

View file

@ -1012,7 +1012,7 @@ struct ofmt of_coff = {
coff_out,
coff_deflabel,
coff_section_names,
null_segalign,
null_sectalign,
coff_segbase,
coff_directives,
coff_std_filename,
@ -1035,7 +1035,7 @@ struct ofmt of_win32 = {
coff_out,
coff_deflabel,
coff_section_names,
null_segalign,
null_sectalign,
coff_segbase,
coff_directives,
coff_win32_filename,
@ -1058,7 +1058,7 @@ struct ofmt of_win64 = {
coff_out,
coff_deflabel,
coff_section_names,
null_segalign,
null_sectalign,
coff_segbase,
coff_directives,
coff_win32_filename,

View file

@ -166,7 +166,7 @@ static void dbg_out(int32_t segto, const void *data,
}
}
static void dbg_segalign(int32_t seg, int value)
static void dbg_sectalign(int32_t seg, unsigned int value)
{
fprintf(ofile, "set alignment (%d) for segment (%d)\n",
seg, value);
@ -265,7 +265,7 @@ struct ofmt of_dbg = {
dbg_out,
dbg_deflabel,
dbg_section_names,
dbg_segalign,
dbg_sectalign,
dbg_segbase,
dbg_directive,
dbg_filename,

View file

@ -1305,7 +1305,7 @@ static void elf_sect_write(struct Section *sect,
sect->len += len;
}
static void elf_segalign(int32_t seg, int value)
static void elf_sectalign(int32_t seg, unsigned int value)
{
struct Section *s = NULL;
int i;
@ -1319,7 +1319,7 @@ static void elf_segalign(int32_t seg, int value)
if (!s || !is_power2(value))
return;
if ((unsigned int)value > s->align)
if (value > s->align)
s->align = value;
}
@ -1419,7 +1419,7 @@ struct ofmt of_elf32 = {
elf_out,
elf_deflabel,
elf_section_names,
elf_segalign,
elf_sectalign,
elf_segbase,
elf_directive,
elf_filename,

View file

@ -1405,7 +1405,7 @@ static void elf_sect_writeaddr(struct Section *sect, int64_t data, size_t len)
sect->len += len;
}
static void elf_segalign(int32_t seg, int value)
static void elf_sectalign(int32_t seg, unsigned int value)
{
struct Section *s = NULL;
int i;
@ -1419,7 +1419,7 @@ static void elf_segalign(int32_t seg, int value)
if (!s || !is_power2(value))
return;
if ((unsigned int)value > s->align)
if (value > s->align)
s->align = value;
}
@ -1519,7 +1519,7 @@ struct ofmt of_elf64 = {
elf_out,
elf_deflabel,
elf_section_names,
elf_segalign,
elf_sectalign,
elf_segbase,
elf_directive,
elf_filename,

View file

@ -1501,7 +1501,7 @@ struct ofmt of_ieee = {
ieee_out,
ieee_deflabel,
ieee_segment,
null_segalign,
null_sectalign,
ieee_segbase,
ieee_directive,
ieee_filename,

View file

@ -41,7 +41,7 @@ uint64_t realsize(enum out_type type, uint64_t size);
/* Do-nothing versions of some output routines */
int null_setinfo(enum geninfo type, char **string);
int null_directive(enum directives directive, char *value, int pass);
void null_segalign(int32_t seg, int value);
void null_sectalign(int32_t seg, unsigned int value);
/* Do-nothing versions of all the debug routines */
struct ofmt;

View file

@ -1317,7 +1317,7 @@ struct ofmt of_macho32 = {
macho_output,
macho_symdef,
macho_section,
null_segalign,
null_sectalign,
macho_segbase,
null_directive,
macho_filename,

View file

@ -1488,7 +1488,7 @@ struct ofmt of_macho64 = {
macho_output,
macho_symdef,
macho_section,
null_segalign,
null_sectalign,
macho_segbase,
null_directive,
macho_filename,

View file

@ -2559,7 +2559,7 @@ struct ofmt of_obj = {
obj_out,
obj_deflabel,
obj_segment,
null_segalign,
null_sectalign,
obj_segbase,
obj_directive,
obj_filename,

View file

@ -788,7 +788,7 @@ struct ofmt of_rdf2 = {
rdf2_out,
rdf2_deflabel,
rdf2_section_names,
null_segalign,
null_sectalign,
rdf2_segbase,
rdf2_directive,
rdf2_filename,

View file

@ -66,9 +66,8 @@
%define __SECT__ [segment %1]
__SECT__
%endmacro
%imacro segalign 1+.nolist
%define __SECT__ [segalign %1]
__SECT__
%imacro sectalign 1.nolist
[sectalign %1]
%endmacro
%imacro absolute 1+.nolist