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 {
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
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)
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 *
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)
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;
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;
}
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);
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;
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);
mx = md;
}
- LINEMAPS_MACRO_CACHE (set) = mx;
+ set->info_macro.m_cache = mx;
return mx;
}