From 49fe13f6d8cfe7f3450608a4444b2f9a5b04de35 Mon Sep 17 00:00:00 2001 From: Neil Booth Date: Sun, 17 Dec 2000 22:40:32 +0000 Subject: [PATCH] cpplib.h (struct cpp_reader): Remove references to string_pool and temp_string_pool. * cpplib.h (struct cpp_reader): Remove references to string_pool and temp_string_pool. * cppinit.c (cpp_create_reader, cpp_cleanup): Similarly; using ident_pool in place. * cpplex.c (parse_number, unescaped_terminator_p, parse_string, save_comment, cpp_token_as_text): Similarly. * cpplib.c (do_define, glue_header_name, parse_assertion): Similarly. * cppmacro.c (make_number_token, builtin_macro, lock_pools, unlock_pools, stringify_arg, paste_tokens): Similarly. From-SVN: r38336 --- gcc/ChangeLog | 12 ++++++++++++ gcc/cppinit.c | 7 ------- gcc/cpplex.c | 10 +++++----- gcc/cpplib.c | 12 +----------- gcc/cpplib.h | 2 -- gcc/cppmacro.c | 12 ++++-------- 6 files changed, 22 insertions(+), 33 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2bb19befba3..31beacdb541 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,15 @@ +2000-12-17 Neil Booth + + * cpplib.h (struct cpp_reader): Remove references to string_pool + and temp_string_pool. + * cppinit.c (cpp_create_reader, cpp_cleanup): Similarly; using + ident_pool in place. + * cpplex.c (parse_number, unescaped_terminator_p, parse_string, + save_comment, cpp_token_as_text): Similarly. + * cpplib.c (do_define, glue_header_name, parse_assertion): Similarly. + * cppmacro.c (make_number_token, builtin_macro, lock_pools, + unlock_pools, stringify_arg, paste_tokens): Similarly. + Sun Dec 17 12:41:48 2000 Richard Kenner * dwarf2out.c (loc_descriptor_from_tree, case NOP_EXPR): New case. diff --git a/gcc/cppinit.c b/gcc/cppinit.c index 1ded3a35367..ea4bc6bc519 100644 --- a/gcc/cppinit.c +++ b/gcc/cppinit.c @@ -513,18 +513,12 @@ cpp_create_reader (lang) /* Identifier pool initially 8K. Unaligned, permanent pool. */ _cpp_init_pool (&pfile->ident_pool, 8 * 1024, 1, 0); - /* String and number pool initially 4K. Unaligned, temporary pool. */ - _cpp_init_pool (&pfile->temp_string_pool, 4 * 1024, 1, 1); - /* Argument pool initially 8K. Aligned, temporary pool. */ _cpp_init_pool (&pfile->argument_pool, 8 * 1024, 0, 1); /* Macro pool initially 8K. Aligned, permanent pool. */ _cpp_init_pool (&pfile->macro_pool, 8 * 1024, 0, 0); - /* Start with temporary pool. */ - pfile->string_pool = &pfile->temp_string_pool; - _cpp_init_hashtable (pfile); _cpp_init_stacks (pfile); _cpp_init_includes (pfile); @@ -568,7 +562,6 @@ cpp_cleanup (pfile) _cpp_free_lookaheads (pfile); _cpp_free_pool (&pfile->ident_pool); - _cpp_free_pool (&pfile->temp_string_pool); _cpp_free_pool (&pfile->macro_pool); _cpp_free_pool (&pfile->argument_pool); diff --git a/gcc/cpplex.c b/gcc/cpplex.c index 2b5b85233a3..1dc401e8f08 100644 --- a/gcc/cpplex.c +++ b/gcc/cpplex.c @@ -539,7 +539,7 @@ parse_number (pfile, number, c, leading_period) int leading_period; { cpp_buffer *buffer = pfile->buffer; - cpp_pool *pool = pfile->string_pool; + cpp_pool *pool = &pfile->ident_pool; unsigned char *dest, *limit; dest = POOL_FRONT (pool); @@ -618,7 +618,7 @@ unescaped_terminator_p (pfile, dest) if (pfile->state.angled_headers) return 1; - start = POOL_FRONT (pfile->string_pool); + start = POOL_FRONT (&pfile->ident_pool); /* An odd number of consecutive backslashes represents an escaped terminator. */ @@ -640,7 +640,7 @@ parse_string (pfile, token, terminator) cppchar_t terminator; { cpp_buffer *buffer = pfile->buffer; - cpp_pool *pool = pfile->string_pool; + cpp_pool *pool = &pfile->ident_pool; unsigned char *dest, *limit; cppchar_t c; unsigned int nulls = 0; @@ -738,7 +738,7 @@ save_comment (pfile, token, from) line, which we don't want to save in the comment. */ if (pfile->buffer->read_ahead != EOF) len--; - buffer = _cpp_pool_alloc (pfile->string_pool, len); + buffer = _cpp_pool_alloc (&pfile->ident_pool, len); token->type = CPP_COMMENT; token->val.str.len = len; @@ -1378,7 +1378,7 @@ cpp_token_as_text (pfile, token) const cpp_token *token; { unsigned int len = cpp_token_len (token); - unsigned char *start = _cpp_pool_alloc (&pfile->temp_string_pool, len), *end; + unsigned char *start = _cpp_pool_alloc (&pfile->ident_pool, len), *end; end = cpp_spell_token (pfile, token, start); end[0] = '\0'; diff --git a/gcc/cpplib.c b/gcc/cpplib.c index a032f7be24d..76d6cc3c580 100644 --- a/gcc/cpplib.c +++ b/gcc/cpplib.c @@ -457,15 +457,9 @@ do_define (pfile) if (node) { - /* Use the permanent pool for storage. */ - pfile->string_pool = &pfile->ident_pool; - if (_cpp_create_definition (pfile, node)) if (pfile->cb.define) (*pfile->cb.define) (pfile, node); - - /* Revert to the temporary pool. */ - pfile->string_pool = &pfile->temp_string_pool; } } @@ -531,7 +525,7 @@ glue_header_name (pfile, header) cpp_error (pfile, "missing terminating > character"); else { - token_mem = _cpp_pool_alloc (pfile->string_pool, total_len); + token_mem = _cpp_pool_alloc (&pfile->ident_pool, total_len); memcpy (token_mem, buffer, total_len); header->type = CPP_HEADER_NAME; @@ -1487,9 +1481,6 @@ parse_assertion (pfile, answerp, type) /* We don't expand predicates or answers. */ pfile->state.prevent_expansion++; - /* Use the permanent pool for storage (for the answers). */ - pfile->string_pool = &pfile->ident_pool; - *answerp = 0; cpp_get_token (pfile, &predicate); if (predicate.type == CPP_EOF) @@ -1507,7 +1498,6 @@ parse_assertion (pfile, answerp, type) result = cpp_lookup (pfile, sym, len + 1); } - pfile->string_pool = &pfile->temp_string_pool; pfile->state.prevent_expansion--; return result; } diff --git a/gcc/cpplib.h b/gcc/cpplib.h index 4c4b7e3a320..32ebb747db2 100644 --- a/gcc/cpplib.h +++ b/gcc/cpplib.h @@ -512,10 +512,8 @@ struct cpp_reader /* Memory pools. */ cpp_pool ident_pool; /* For all identifiers, and permanent numbers and strings. */ - cpp_pool temp_string_pool; /* For temporary numbers and strings. */ cpp_pool macro_pool; /* For macro definitions. Permanent. */ cpp_pool argument_pool; /* For macro arguments. Temporary. */ - cpp_pool* string_pool; /* Either temp_string_pool or ident_pool. */ /* Context stack. */ struct cpp_context base_context; diff --git a/gcc/cppmacro.c b/gcc/cppmacro.c index 22900932e0e..8af9fab52ff 100644 --- a/gcc/cppmacro.c +++ b/gcc/cppmacro.c @@ -125,7 +125,7 @@ make_number_token (pfile, token, number) cpp_token *token; int number; { - unsigned char *buf = _cpp_pool_alloc (pfile->string_pool, 20); + unsigned char *buf = _cpp_pool_alloc (&pfile->ident_pool, 20); sprintf ((char *) buf, "%d", number); token->type = CPP_NUMBER; @@ -162,7 +162,7 @@ builtin_macro (pfile, token) buffer = buffer->prev; name = buffer->nominal_fname; - make_string_token (pfile->string_pool, token, + make_string_token (&pfile->ident_pool, token, (const unsigned char *) name, strlen (name)); } break; @@ -237,7 +237,6 @@ static void lock_pools (pfile) cpp_reader *pfile; { - _cpp_lock_pool (&pfile->temp_string_pool); _cpp_lock_pool (&pfile->argument_pool); } @@ -245,7 +244,6 @@ static void unlock_pools (pfile) cpp_reader *pfile; { - _cpp_unlock_pool (&pfile->temp_string_pool); _cpp_unlock_pool (&pfile->argument_pool); } @@ -288,7 +286,7 @@ stringify_arg (pfile, arg) cpp_reader *pfile; macro_arg *arg; { - cpp_pool *pool = pfile->string_pool; + cpp_pool *pool = &pfile->ident_pool; unsigned char *start = POOL_FRONT (pool); unsigned int i, escape_it, total_len = 0, backslash_count = 0; @@ -397,10 +395,8 @@ paste_tokens (pfile, lhs, rhs) { unsigned int total_len = cpp_token_len (lhs) + cpp_token_len (rhs); unsigned char *result, *end; - cpp_pool *pool; - pool = type == CPP_NAME ? &pfile->ident_pool: pfile->string_pool; - result = _cpp_pool_alloc (pool, total_len + 1); + result = _cpp_pool_alloc (&pfile->ident_pool, total_len + 1); /* Paste the spellings and null terminate. */ end = cpp_spell_token (pfile, rhs, cpp_spell_token (pfile, lhs, result)); -- 2.30.2