gcc: honour -ffile-prefix-map in ASM_MAP [PR93371]

-ffile-prefix-map is supposed to be a superset of -fmacro-prefix-map
and -fdebug-prefix-map. However, when building .S or .s files, gas is
not called with the appropriate --debug-prefix-map option when
-ffile-prefix-map is used.

While the user can specify -fdebug-prefix-map when building assembly
files via gcc, it's more ergonomic to also support -ffile-prefix-map;
especially since for .S files that could contain the __FILE__ macro,
one would then also have to specify -fmacro-prefix-map.

gcc:
	PR driver/93371
	* gcc.cc (ASM_MAP): Honour -ffile-prefix-map.
This commit is contained in:
Rasmus Villemoes 2022-11-02 10:01:22 -06:00 committed by Jeff Law
parent 58511b3fc0
commit abaa32c738

View file

@ -877,7 +877,7 @@ proper position among the other output files. */
#endif
#ifdef HAVE_AS_DEBUG_PREFIX_MAP
#define ASM_MAP " %{fdebug-prefix-map=*:--debug-prefix-map %*}"
#define ASM_MAP " %{ffile-prefix-map=*:--debug-prefix-map %*} %{fdebug-prefix-map=*:--debug-prefix-map %*}"
#else
#define ASM_MAP ""
#endif