aboutsummaryrefslogtreecommitdiff
path: root/libcpp
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2023-10-08 18:43:17 -0400
committerDavid Malcolm <dmalcolm@redhat.com>2023-10-08 18:43:17 -0400
commit45bae1809c3919ae3b77b59fd5502c2ab8340418 (patch)
tree3e70d43c00bd4d384c78317a46e3ed4f5f99c27a /libcpp
parenta73c80d99736f03ba5a7a74853bcd415bbdc4c32 (diff)
downloadgcc-45bae1809c3919ae3b77b59fd5502c2ab8340418.zip
gcc-45bae1809c3919ae3b77b59fd5502c2ab8340418.tar.gz
gcc-45bae1809c3919ae3b77b59fd5502c2ab8340418.tar.bz2
libcpp: eliminate LINEMAPS_{,ORDINARY_,MACRO_}CACHE
It's simpler to use field access than to go through these inline functions that look as if they are macros. No functional change intended. libcpp/ChangeLog: * include/line-map.h (maps_info_ordinary::cache): Rename to... (maps_info_ordinary::m_cache): ...this. (maps_info_macro::cache): Rename to... (maps_info_macro::m_cache): ...this. (LINEMAPS_CACHE): Delete. (LINEMAPS_ORDINARY_CACHE): Delete. (LINEMAPS_MACRO_CACHE): Delete. * init.cc (read_original_filename): Update for adding "m_" prefix. * line-map.cc (linemap_add): Eliminate LINEMAPS_ORDINARY_CACHE in favor of a simple field access. (linemap_enter_macro): Likewise for LINEMAPS_MACRO_CACHE. (linemap_ordinary_map_lookup): Likewise for LINEMAPS_ORDINARY_CACHE, twice. (linemap_lookup_macro_index): Likewise for LINEMAPS_MACRO_CACHE. Signed-off-by: David Malcolm <dmalcolm@redhat.com>
Diffstat (limited to 'libcpp')
-rw-r--r--libcpp/include/line-map.h36
-rw-r--r--libcpp/init.cc2
-rw-r--r--libcpp/line-map.cc12
3 files changed, 13 insertions, 37 deletions
diff --git a/libcpp/include/line-map.h b/libcpp/include/line-map.h
index 7a172f4..30f2284 100644
--- a/libcpp/include/line-map.h
+++ b/libcpp/include/line-map.h
@@ -733,7 +733,9 @@ struct GTY(()) maps_info_ordinary {
or equal to ALLOCATED. */
unsigned int used;
- mutable unsigned int cache;
+ /* The index of the last ordinary map that was looked up with
+ linemap_lookup. */
+ mutable unsigned int m_cache;
};
struct GTY(()) maps_info_macro {
@@ -748,7 +750,9 @@ struct GTY(()) maps_info_macro {
or equal to ALLOCATED. */
unsigned int used;
- mutable unsigned int cache;
+ /* The index of the last macro map that was looked up with
+ linemap_lookup. */
+ mutable unsigned int m_cache;
};
/* Data structure to associate a source_range together with an arbitrary
@@ -904,18 +908,6 @@ LINEMAPS_USED (line_maps *set, bool map_kind)
return set->info_ordinary.used;
}
-/* Returns the index of the last map that was looked up with
- linemap_lookup. MAP_KIND shall be TRUE if we are interested in
- macro maps, FALSE otherwise. */
-inline unsigned int &
-LINEMAPS_CACHE (const line_maps *set, bool map_kind)
-{
- if (map_kind)
- return set->info_macro.cache;
- else
- return set->info_ordinary.cache;
-}
-
/* Return the map at a given index. */
inline line_map *
LINEMAPS_MAP_AT (const line_maps *set, bool map_kind, int index)
@@ -968,14 +960,6 @@ LINEMAPS_ORDINARY_USED (const line_maps *set)
return LINEMAPS_USED (set, false);
}
-/* Return the index of the last ordinary map that was looked up with
- linemap_lookup. */
-inline unsigned int &
-LINEMAPS_ORDINARY_CACHE (const line_maps *set)
-{
- return LINEMAPS_CACHE (set, false);
-}
-
/* Returns a pointer to the last ordinary map used in the line table
SET. */
inline line_map_ordinary *
@@ -1016,14 +1000,6 @@ LINEMAPS_MACRO_USED (const line_maps *set)
return LINEMAPS_USED (set, true);
}
-/* Return the index of the last macro map that was looked up with
- linemap_lookup. */
-inline unsigned int &
-LINEMAPS_MACRO_CACHE (const line_maps *set)
-{
- return LINEMAPS_CACHE (set, true);
-}
-
/* Returns the last macro map used in the line table SET. */
inline line_map_macro *
LINEMAPS_LAST_MACRO_MAP (const line_maps *set)
diff --git a/libcpp/init.cc b/libcpp/init.cc
index 9a20f8d..b97d7a7 100644
--- a/libcpp/init.cc
+++ b/libcpp/init.cc
@@ -788,7 +788,7 @@ read_original_filename (cpp_reader *pfile)
penult[1].reason = penult[0].reason;
penult[0] = penult[1];
pfile->line_table->info_ordinary.used--;
- pfile->line_table->info_ordinary.cache = 0;
+ pfile->line_table->info_ordinary.m_cache = 0;
}
return true;
diff --git a/libcpp/line-map.cc b/libcpp/line-map.cc
index 5b67a70..385d54c 100644
--- a/libcpp/line-map.cc
+++ b/libcpp/line-map.cc
@@ -638,7 +638,7 @@ linemap_add (line_maps *set, enum lc_reason reason,
map->sysp = sysp;
map->to_file = to_file;
map->to_line = to_line;
- LINEMAPS_ORDINARY_CACHE (set) = LINEMAPS_ORDINARY_USED (set) - 1;
+ set->info_ordinary.m_cache = LINEMAPS_ORDINARY_USED (set) - 1;
/* Do not store range_bits here. That's readjusted in
linemap_line_start. */
map->m_range_bits = map->m_column_and_range_bits = 0;
@@ -786,7 +786,7 @@ linemap_enter_macro (class line_maps *set, struct cpp_hashnode *macro_node,
memset (MACRO_MAP_LOCATIONS (map), 0,
2 * num_tokens * sizeof (location_t));
- LINEMAPS_MACRO_CACHE (set) = LINEMAPS_MACRO_USED (set) - 1;
+ set->info_macro.m_cache = LINEMAPS_MACRO_USED (set) - 1;
return map;
}
@@ -1116,7 +1116,7 @@ linemap_ordinary_map_lookup (const line_maps *set, location_t line)
if (set == NULL || line < RESERVED_LOCATION_COUNT)
return NULL;
- unsigned mn = LINEMAPS_ORDINARY_CACHE (set);
+ unsigned mn = set->info_ordinary.m_cache;
unsigned mx = LINEMAPS_ORDINARY_USED (set);
const line_map_ordinary *cached = LINEMAPS_ORDINARY_MAP_AT (set, mn);
@@ -1141,7 +1141,7 @@ linemap_ordinary_map_lookup (const line_maps *set, location_t line)
mn = md;
}
- LINEMAPS_ORDINARY_CACHE (set) = mn;
+ set->info_ordinary.m_cache = mn;
const line_map_ordinary *result = LINEMAPS_ORDINARY_MAP_AT (set, mn);
linemap_assert (line >= MAP_START_LOCATION (result));
return result;
@@ -1173,7 +1173,7 @@ linemap_macro_map_lookup (const line_maps *set, location_t line)
unsigned
linemap_lookup_macro_index (const line_maps *set, location_t line)
{
- unsigned mn = LINEMAPS_MACRO_CACHE (set);
+ unsigned mn = set->info_macro.m_cache;
unsigned mx = LINEMAPS_MACRO_USED (set);
const struct line_map_macro *cached = LINEMAPS_MACRO_MAP_AT (set, mn);
@@ -1195,7 +1195,7 @@ linemap_lookup_macro_index (const line_maps *set, location_t line)
mx = md;
}
- LINEMAPS_MACRO_CACHE (set) = mx;
+ set->info_macro.m_cache = mx;
return mx;
}