diff options
author | Steve Chamberlain <sac@cygnus> | 1995-06-29 00:41:02 +0000 |
---|---|---|
committer | Steve Chamberlain <sac@cygnus> | 1995-06-29 00:41:02 +0000 |
commit | 30355216bd56a1e5a91fd979227f29414b7ae234 (patch) | |
tree | 66057ca381eb4243fb610d21d2cf198d7ac07a91 /gas/config | |
parent | de71eb7786da1170ae4b4acabeb4c62513c19602 (diff) | |
download | gdb-30355216bd56a1e5a91fd979227f29414b7ae234.zip gdb-30355216bd56a1e5a91fd979227f29414b7ae234.tar.gz gdb-30355216bd56a1e5a91fd979227f29414b7ae234.tar.bz2 |
* config/obj-coff.c (fixup_segment): PE doens't use
the strange common symbol format that other 386s formats
do.
* config/tc-i386.c (md_begin): If LEX_AT defined then
'@' is in the set of identifiers.
(i386_operand): If LEX_AT, then don't look for @goto stuff.
* config/te-pe.h: Define LEX_AT.
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/obj-coff.c | 4 | ||||
-rw-r--r-- | gas/config/tc-i386.c | 19 |
2 files changed, 8 insertions, 15 deletions
diff --git a/gas/config/obj-coff.c b/gas/config/obj-coff.c index 82b5e96..e80eeb9 100644 --- a/gas/config/obj-coff.c +++ b/gas/config/obj-coff.c @@ -2983,7 +2983,7 @@ write_object_file () H_SET_FILE_MAGIC_NUMBER (&headers, COFF_MAGIC); #ifndef OBJ_COFF_OMIT_TIMESTAMP - H_SET_TIME_STAMP (&headers, (long)time((long*)0)); + H_SET_TIME_STAMP (&headers, (long)time((time_t *)0)); #else H_SET_TIME_STAMP (&headers, 0); #endif @@ -3674,7 +3674,7 @@ fixup_segment (segP, this_segment_type) continue; } /* COBR */ #endif /* TC_I960 */ -#if defined (TC_I386) || defined (TE_LYNX) +#if (defined (TC_I386) || defined (TE_LYNX)) && !defined(TE_PE) /* 386 COFF uses a peculiar format in which the value of a common symbol is stored in the .text segment (I've checked this on SVR3.2 and SCO diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 2b58aff..29c6b50 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -477,6 +477,10 @@ md_begin () if (isalpha (c) || c == '_' || c == '.' || isdigit (c)) identifier_chars[c] = c; +#ifdef LEX_AT + identifier_chars['@'] = '@'; +#endif + if (c == ' ' || c == '\t') space_chars[c] = c; } @@ -2158,7 +2162,7 @@ i386_operand (operand_string) save_input_line_pointer = input_line_pointer; input_line_pointer = displacement_string_start; END_STRING_AND_SAVE (displacement_string_end); - +#ifndef LEX_AT { /* * We can have operands of the form @@ -2196,7 +2200,7 @@ i386_operand (operand_string) input_line_pointer = tmpbuf; } } - +#endif exp_seg = expression (exp); #ifdef BFD_ASSEMBLER @@ -2795,17 +2799,6 @@ md_undefined_symbol (name) return 0; } -/* Parse an operand that is machine-specific. - We just return without modifying the expression if we have nothing - to do. */ - -/* ARGSUSED */ -void -md_operand (expressionP) - expressionS *expressionP; -{ -} - /* Round up a section size to the appropriate boundary. */ valueT md_section_align (segment, size) |