aboutsummaryrefslogtreecommitdiff
path: root/libcpp
diff options
context:
space:
mode:
authordmalcolm <dmalcolm@138bc75d-0d04-0410-961f-82ee72b054a4>2015-05-20 09:13:19 +0000
committerdmalcolm <dmalcolm@138bc75d-0d04-0410-961f-82ee72b054a4>2015-05-20 09:13:19 +0000
commit3ce1a21240d2fd3b17984c72b1e838a2dd7e0967 (patch)
tree0ca4cd222d162638e55f407eb20c49fcdfb17528 /libcpp
parent3ec9c44795ef039a6a07b5961aa9cd71e856509a (diff)
libcpp: Eliminate most of the non-const/reference-returning inline fns
gcc/java/ChangeLog: * jcf-parse.c (set_source_filename): Replace write through ORDINARY_MAP_FILE_NAME with direct access to "to_file". libcpp/ChangeLog: * include/line-map.h (MAP_START_LOCATION): Eliminate the non-const variant, and tweak comment for the const variant. (ORDINARY_MAP_STARTING_LINE_NUMBER): Drop the non-const variant. (ORDINARY_MAP_INCLUDER_FILE_INDEX): Likewise. (ORDINARY_MAP_IN_SYSTEM_HEADER_P): Likewise. (SET_ORDINARY_MAP_NUMBER_OF_COLUMN_BITS): Delete. (ORDINARY_MAP_FILE_NAME): Drop the non-const variant. (MACRO_MAP_MACRO): Likewise. (MACRO_MAP_NUM_MACRO_TOKENS): Likewise. (MACRO_MAP_LOCATIONS): Likewise. (MACRO_MAP_EXPANSION_POINT_LOCATION): Likewise. * line-map.c (linemap_add): Replace writes through macros with direct field accesses. (linemap_enter_macro): Likewise. (linemap_line_start): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223435 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libcpp')
-rw-r--r--libcpp/ChangeLog18
-rw-r--r--libcpp/include/line-map.h86
-rw-r--r--libcpp/line-map.c29
3 files changed, 33 insertions, 100 deletions
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
index d82f00894ca..32ace00ccb0 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,21 @@
+2015-05-20 David Malcolm <dmalcolm@redhat.com>
+
+ * include/line-map.h (MAP_START_LOCATION): Eliminate the non-const
+ variant, and tweak comment for the const variant.
+ (ORDINARY_MAP_STARTING_LINE_NUMBER): Drop the non-const variant.
+ (ORDINARY_MAP_INCLUDER_FILE_INDEX): Likewise.
+ (ORDINARY_MAP_IN_SYSTEM_HEADER_P): Likewise.
+ (SET_ORDINARY_MAP_NUMBER_OF_COLUMN_BITS): Delete.
+ (ORDINARY_MAP_FILE_NAME): Drop the non-const variant.
+ (MACRO_MAP_MACRO): Likewise.
+ (MACRO_MAP_NUM_MACRO_TOKENS): Likewise.
+ (MACRO_MAP_LOCATIONS): Likewise.
+ (MACRO_MAP_EXPANSION_POINT_LOCATION): Likewise.
+ * line-map.c (linemap_add): Replace writes through macros with
+ direct field accesses.
+ (linemap_enter_macro): Likewise.
+ (linemap_line_start): Likewise.
+
2015-05-19 David Malcolm <dmalcolm@redhat.com>
* directives.c (do_line): Strengthen local "map" from
diff --git a/libcpp/include/line-map.h b/libcpp/include/line-map.h
index 5c04945c727..41551563868 100644
--- a/libcpp/include/line-map.h
+++ b/libcpp/include/line-map.h
@@ -343,7 +343,7 @@ linemap_check_macro (const line_map *map)
return (const line_map_macro *)map;
}
-/* Read the start location of MAP, as an rvalue. */
+/* Read the start location of MAP. */
inline source_location
MAP_START_LOCATION (const line_map *map)
@@ -351,15 +351,6 @@ MAP_START_LOCATION (const line_map *map)
return map->start_location;
}
-/* Access the start location of MAP as a reference
- (e.g. as an lvalue). */
-
-inline source_location&
-MAP_START_LOCATION (line_map *map)
-{
- return map->start_location;
-}
-
/* Get the starting line number of ordinary map MAP. */
inline linenum_type
@@ -368,15 +359,6 @@ ORDINARY_MAP_STARTING_LINE_NUMBER (const line_map_ordinary *ord_map)
return ord_map->to_line;
}
-/* Access the starting line number of ordinary map MAP by
- reference (e.g. as an lvalue). */
-
-inline linenum_type&
-ORDINARY_MAP_STARTING_LINE_NUMBER (line_map_ordinary *ord_map)
-{
- return ord_map->to_line;
-}
-
/* Get the index of the ordinary map at whose end
ordinary map MAP was included.
@@ -388,14 +370,6 @@ ORDINARY_MAP_INCLUDER_FILE_INDEX (const line_map_ordinary *ord_map)
return ord_map->included_from;
}
-/* As above, but by reference (e.g. as an lvalue). */
-
-inline int&
-ORDINARY_MAP_INCLUDER_FILE_INDEX (line_map_ordinary *ord_map)
-{
- return ord_map->included_from;
-}
-
/* Return a positive value if map encodes locations from a system
header, 0 otherwise. Returns 1 if ordinary map MAP encodes locations
in a system header and 2 if it encodes locations in a C system header
@@ -407,14 +381,6 @@ ORDINARY_MAP_IN_SYSTEM_HEADER_P (const line_map_ordinary *ord_map)
return ord_map->sysp;
}
-/* As above, but by reference (e.g. as an lvalue). */
-
-inline unsigned char &
-ORDINARY_MAP_IN_SYSTEM_HEADER_P (line_map_ordinary *ord_map)
-{
- return ord_map->sysp;
-}
-
/* Get the number of the low-order source_location bits used for a
column number within ordinary map MAP. */
@@ -424,16 +390,6 @@ ORDINARY_MAP_NUMBER_OF_COLUMN_BITS (const line_map_ordinary *ord_map)
return ord_map->column_bits;
}
-/* Set the number of the low-order source_location bits used for a
- column number within ordinary map MAP. */
-
-inline void
-SET_ORDINARY_MAP_NUMBER_OF_COLUMN_BITS (line_map_ordinary *ord_map,
- int col_bits)
-{
- ord_map->column_bits = col_bits;
-}
-
/* Get the filename of ordinary map MAP. */
inline const char *
@@ -442,14 +398,6 @@ ORDINARY_MAP_FILE_NAME (const line_map_ordinary *ord_map)
return ord_map->to_file;
}
-/* As above, but by reference (e.g. as an lvalue). */
-
-inline const char * &
-ORDINARY_MAP_FILE_NAME (line_map_ordinary *ord_map)
-{
- return ord_map->to_file;
-}
-
/* Get the cpp macro whose expansion gave birth to macro map MAP. */
inline cpp_hashnode *
@@ -458,14 +406,6 @@ MACRO_MAP_MACRO (const line_map_macro *macro_map)
return macro_map->macro;
}
-/* As above, but by reference (e.g. as an lvalue). */
-
-inline cpp_hashnode * &
-MACRO_MAP_MACRO (line_map_macro *macro_map)
-{
- return macro_map->macro;
-}
-
/* Get the number of tokens inside the replacement-list of the macro
that led to macro map MAP. */
@@ -475,14 +415,6 @@ MACRO_MAP_NUM_MACRO_TOKENS (const line_map_macro *macro_map)
return macro_map->n_tokens;
}
-/* As above, but by reference (e.g. as an lvalue). */
-
-inline unsigned int &
-MACRO_MAP_NUM_MACRO_TOKENS (line_map_macro *macro_map)
-{
- return macro_map->n_tokens;
-}
-
/* Get the array of pairs of locations within macro map MAP.
See the declaration of line_map_macro for more information. */
@@ -492,14 +424,6 @@ MACRO_MAP_LOCATIONS (const line_map_macro *macro_map)
return macro_map->macro_locations;
}
-/* As above, but by reference (e.g. as an lvalue). */
-
-inline source_location * &
-MACRO_MAP_LOCATIONS (line_map_macro *macro_map)
-{
- return macro_map->macro_locations;
-}
-
/* Get the location of the expansion point of the macro map MAP. */
inline source_location
@@ -508,14 +432,6 @@ MACRO_MAP_EXPANSION_POINT_LOCATION (const line_map_macro *macro_map)
return macro_map->expansion;
}
-/* As above, but by reference (e.g. as an lvalue). */
-
-inline source_location &
-MACRO_MAP_EXPANSION_POINT_LOCATION (line_map_macro *macro_map)
-{
- return macro_map->expansion;
-}
-
/* The abstraction of a set of location maps. There can be several
types of location maps. This abstraction contains the attributes
that are independent from the type of the map.
diff --git a/libcpp/line-map.c b/libcpp/line-map.c
index e262df488f7..a5e45e47dd3 100644
--- a/libcpp/line-map.c
+++ b/libcpp/line-map.c
@@ -381,31 +381,30 @@ linemap_add (struct line_maps *set, enum lc_reason reason,
}
}
- ORDINARY_MAP_IN_SYSTEM_HEADER_P (map) = sysp;
- MAP_START_LOCATION (map) = start_location;
- ORDINARY_MAP_FILE_NAME (map) = to_file;
- ORDINARY_MAP_STARTING_LINE_NUMBER (map) = to_line;
+ map->sysp = sysp;
+ map->start_location = start_location;
+ map->to_file = to_file;
+ map->to_line = to_line;
LINEMAPS_ORDINARY_CACHE (set) = LINEMAPS_ORDINARY_USED (set) - 1;
- SET_ORDINARY_MAP_NUMBER_OF_COLUMN_BITS (map, 0);
+ map->column_bits = 0;
set->highest_location = start_location;
set->highest_line = start_location;
set->max_column_hint = 0;
if (reason == LC_ENTER)
{
- ORDINARY_MAP_INCLUDER_FILE_INDEX (map) =
+ map->included_from =
set->depth == 0 ? -1 : (int) (LINEMAPS_ORDINARY_USED (set) - 2);
set->depth++;
if (set->trace_includes)
trace_include (set, map);
}
else if (reason == LC_RENAME)
- ORDINARY_MAP_INCLUDER_FILE_INDEX (map) =
- ORDINARY_MAP_INCLUDER_FILE_INDEX (&map[-1]);
+ map->included_from = ORDINARY_MAP_INCLUDER_FILE_INDEX (&map[-1]);
else if (reason == LC_LEAVE)
{
set->depth--;
- ORDINARY_MAP_INCLUDER_FILE_INDEX (map) =
+ map->included_from =
ORDINARY_MAP_INCLUDER_FILE_INDEX (INCLUDED_FROM (set, map - 1));
}
@@ -464,14 +463,14 @@ linemap_enter_macro (struct line_maps *set, struct cpp_hashnode *macro_node,
map = linemap_check_macro (new_linemap (set, LC_ENTER_MACRO));
- MAP_START_LOCATION (map) = start_location;
- MACRO_MAP_MACRO (map) = macro_node;
- MACRO_MAP_NUM_MACRO_TOKENS (map) = num_tokens;
- MACRO_MAP_LOCATIONS (map)
+ map->start_location = start_location;
+ map->macro = macro_node;
+ map->n_tokens = num_tokens;
+ map->macro_locations
= (source_location*) reallocator (NULL,
2 * num_tokens
* sizeof (source_location));
- MACRO_MAP_EXPANSION_POINT_LOCATION (map) = expansion;
+ map->expansion = expansion;
memset (MACRO_MAP_LOCATIONS (map), 0,
num_tokens * sizeof (source_location));
@@ -580,7 +579,7 @@ linemap_line_start (struct line_maps *set, linenum_type to_line,
ORDINARY_MAP_IN_SYSTEM_HEADER_P (map),
ORDINARY_MAP_FILE_NAME (map),
to_line)));
- SET_ORDINARY_MAP_NUMBER_OF_COLUMN_BITS (map, column_bits);
+ map->column_bits = column_bits;
r = (MAP_START_LOCATION (map)
+ ((to_line - ORDINARY_MAP_STARTING_LINE_NUMBER (map))
<< column_bits));