...
 
Commits (49)
.pc
gcc-*.tar.xz
gdc-*.tar.xz
nvptx-newlib-20170301
nvptx-newlib-*.tar.xz
bin
build
build-*
html
locales
src
stamps
bootstrap-*
debian/patches/series
debian/*.debhelper
debian/*.debhelper.log
debian/*.substvars
debian/gcc-XX-7.1
debian/gcc-ar-7.1
debian/gcc-nm-7.1
debian/gcc-ranlib-7.1
debian/tmp*
debian/files
debian/shlibs.local
debian/shlibs.common*
debian/substvars.local
debian/README.libstdc++-baseline
debian/README.Bugs
debian/README.Debian.*
debian/rules.parameters
debian/soname-cache
debian/arch_binaries*
debian/indep_binaries*
debian/*-7*.preinst
debian/*-7*.postinst
debian/*-7*.prerm
debian/*-7*.postrm
debian/*-7*.doc-base*
debian/*-7*.overrides
debian/lib*1.preinst
debian/lib*2.preinst
debian/lib*6.preinst
debian/lib*1.postinst
debian/lib*6.postinst
debian/lib*1.prerm
debian/lib*6.prerm
debian/cpp-7
debian/cpp-7-doc
debian/fixincludes
debian/g++-7
debian/gcc-7
debian/gcc-7-base
debian/gcc-7-doc
debian/gcc-7-source
debian/gcc-7-hppa64-linux-gnu
debian/gcc-7-locales
debian/gcc-7-nof
debian/gcc-7-offload-nvptx
debian/gcc-7-soft-float
debian/gcc-7-test-results
debian/gcc-snapshot
debian/gccbrig-7
debian/gccgo-7
debian/gccgo-7-doc
debian/gdc-7
debian/gfortran-7
debian/gfortran-7-doc
debian/gnat-7
debian/gnat-7-sjlj
debian/gnat-7-base
debian/gnat-7-doc
debian/gobjc-7
debian/gobjc++-7
debian/g*-7-multilib
debian/gcc-7-plugin-dev
debian/lib*asan4
debian/lib*asan4-dbg
debian/lib*atomic1.symbols
debian/lib*atomic1
debian/lib*atomic1-dbg
debian/libcc1-0
debian/lib*cilkrts5.symbols
debian/lib*cilkrts5
debian/lib*cilkrts5-dbg
debian/libgccjit-7-dev
debian/libgccjit-7-doc
debian/libgccjit0
debian/libgccjit0-dbg
debian/lib*gcc1.symbols
debian/lib*gcc[124]
debian/lib*gcc[124]-dbg
debian/lib*gcc-7-dev
debian/lib*gfortran4.symbols
debian/lib*gfortran4
debian/lib*gfortran4-dbg
debian/lib*gfortran-7-dev
debian/lib*go11
debian/lib*go11-dbg
debian/libgomp-plugin-nvptx1
debian/lib*gomp1.symbols
debian/lib*gomp1
debian/lib*gomp1-dbg
debian/lib*hsail-rt0.symbols
debian/lib*hsail-rt0
debian/lib*hsail-rt0-dbg
debian/lib*hsail-rt-7-dev
debian/lib*itm1.symbols
debian/lib*itm1
debian/lib*itm1-dbg
debian/lib*lsan0
debian/lib*lsan0-dbg
debian/lib*mpx2.symbols
debian/lib*mpx2
debian/lib*mpx2-dbg
debian/lib*objc4
debian/lib*objc4-dbg
debian/lib*objc-7-dev
debian/lib*ssp0
debian/lib*tsan0
debian/lib*tsan0-dbg
debian/lib*ubsan0
debian/lib*ubsan0-dbg
debian/lib*vtv0
debian/lib*vtv0-dbg
debian/libgnat-7
debian/libgnatvsn7
debian/libgnatprj7
debian/libgnat*7-dbg
debian/libgnat*7.overrides
debian/libgnat*7-dev
debian/libgomp1-dev
debian/lib*gphobos71
debian/lib*gphobos71-dbg
debian/lib*gphobos-7-dev
debian/lib*quadmath0.symbols
debian/lib*quadmath0
debian/lib*quadmath0-dbg
debian/libssp0-dev
debian/lib*stdc++6
debian/lib*stdc++6-7-dbg
debian/lib*stdc++-7-dev
debian/libstdc++-7-doc
debian/libstdc++-7-pic
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
gcc-7_7.3.0-29_source.buildinfo devel optional
# DP: aarch64-simd: Avoid emitting dup insn by using canonical form for fnma.
diff -urpN a/src/gcc/config/aarch64/aarch64-simd.md b/src/gcc/config/aarch64/aarch64-simd.md
--- a/src/gcc/config/aarch64/aarch64-simd.md 2018-01-08 19:07:26.207492599 -0500
+++ b/src/gcc/config/aarch64/aarch64-simd.md 2018-01-08 19:22:47.451259371 -0500
@@ -1711,9 +1711,8 @@
--- a/src/gcc/config/aarch64/aarch64-simd.md
+++ b/src/gcc/config/aarch64/aarch64-simd.md
@@ -1674,9 +1674,8 @@
(define_insn "fnma<mode>4"
[(set (match_operand:VHSDF 0 "register_operand" "=w")
(fma:VHSDF
......
......@@ -19,11 +19,9 @@ Description: array index out of range in gnatlink
Ada.Text_IO.Put_Line (Boolean'Image (G (1 .. 2) = "ab"));
end A;
Index: b/src/gcc/ada/gnatlink.adb
===================================================================
--- a/src/gcc/ada/gnatlink.adb
+++ b/src/gcc/ada/gnatlink.adb
@@ -239,6 +239,9 @@ procedure Gnatlink is
@@ -238,6 +238,9 @@ procedure Gnatlink is
procedure Write_Usage;
-- Show user the program options
......@@ -33,7 +31,7 @@ Index: b/src/gcc/ada/gnatlink.adb
---------------
-- Base_Name --
---------------
@@ -525,7 +528,7 @@ procedure Gnatlink is
@@ -524,7 +527,7 @@ procedure Gnatlink is
Binder_Options.Table (Binder_Options.Last) :=
Linker_Options.Table (Linker_Options.Last);
......@@ -42,7 +40,7 @@ Index: b/src/gcc/ada/gnatlink.adb
if Arg'Length = 7 then
Exit_With_Error ("Missing argument for --LINK=");
end if;
@@ -538,7 +541,7 @@ procedure Gnatlink is
@@ -537,7 +540,7 @@ procedure Gnatlink is
("Could not locate linker: " & Arg (8 .. Arg'Last));
end if;
......@@ -51,7 +49,7 @@ Index: b/src/gcc/ada/gnatlink.adb
declare
Program_Args : constant Argument_List_Access :=
Argument_String_To_List
@@ -1259,13 +1262,9 @@ procedure Gnatlink is
@@ -1258,13 +1261,9 @@ procedure Gnatlink is
1 .. Linker_Options.Last
loop
if Linker_Options.Table (J) /= null
......@@ -68,7 +66,7 @@ Index: b/src/gcc/ada/gnatlink.adb
then
-- We have found an already
-- specified run_path_option:
@@ -1382,6 +1381,17 @@ procedure Gnatlink is
@@ -1381,6 +1380,17 @@ procedure Gnatlink is
Status := fclose (Fd);
end Process_Binder_File;
......@@ -86,7 +84,7 @@ Index: b/src/gcc/ada/gnatlink.adb
-----------
-- Usage --
-----------
@@ -1896,8 +1906,8 @@ begin
@@ -1894,8 +1904,8 @@ begin
while J <= Linker_Options.Last loop
if Linker_Options.Table (J).all = "-Xlinker"
and then J < Linker_Options.Last
......@@ -97,7 +95,7 @@ Index: b/src/gcc/ada/gnatlink.adb
then
if Stack_Op then
Linker_Options.Table (J .. Linker_Options.Last - 2) :=
@@ -1928,13 +1938,9 @@ begin
@@ -1926,13 +1936,9 @@ begin
-- Here we just check for a canonical form that matches the
-- pragma Linker_Options set in the NT runtime.
......
......@@ -41,7 +41,7 @@ Author: YunQiang Su <wzssyqa@gmail.com>
--- a/src/gcc/ada/osint.ads
+++ b/src/gcc/ada/osint.ads
@@ -137,16 +137,10 @@
@@ -137,16 +137,10 @@ package Osint is
-- path) in Name_Buffer, with the length in Name_Len.
function Program_Name (Nam : String; Prog : String) return String_Access;
......@@ -64,7 +64,7 @@ Author: YunQiang Su <wzssyqa@gmail.com>
-- Writes name of program as invoked to the current output (normally
--- a/src/gcc/ada/osint.adb
+++ b/src/gcc/ada/osint.adb
@@ -2205,51 +2205,52 @@
@@ -2199,51 +2199,52 @@ package body Osint is
------------------
function Program_Name (Nam : String; Prog : String) return String_Access is
......@@ -155,7 +155,7 @@ Author: YunQiang Su <wzssyqa@gmail.com>
------------------------------
--- a/src/gcc/ada/gnatchop.adb
+++ b/src/gcc/ada/gnatchop.adb
@@ -36,6 +36,7 @@
@@ -36,6 +36,7 @@ with GNAT.OS_Lib; use GNA
with GNAT.Heap_Sort_G;
with GNAT.Table;
......@@ -163,7 +163,7 @@ Author: YunQiang Su <wzssyqa@gmail.com>
with Switch; use Switch;
with Types;
@@ -44,12 +45,9 @@
@@ -44,12 +45,9 @@ procedure Gnatchop is
Config_File_Name : constant String_Access := new String'("gnat.adc");
-- The name of the file holding the GNAT configuration pragmas
......@@ -177,7 +177,7 @@ Author: YunQiang Su <wzssyqa@gmail.com>
Gnat_Cmd : String_Access;
-- Command to execute the GNAT compiler
@@ -222,12 +220,6 @@
@@ -222,12 +220,6 @@ procedure Gnatchop is
Integer'Image
(Maximum_File_Name_Length);
......@@ -190,7 +190,7 @@ Author: YunQiang Su <wzssyqa@gmail.com>
subtype EOL_Length is Natural range 0 .. 2;
-- Possible lengths of end of line sequence
@@ -492,76 +484,6 @@
@@ -492,76 +484,6 @@ procedure Gnatchop is
Unit.Table (Sorted_Units.Table (U + 1)).File_Name.all;
end Is_Duplicated;
......@@ -267,7 +267,7 @@ Author: YunQiang Su <wzssyqa@gmail.com>
---------------
-- Parse_EOL --
---------------
@@ -1088,8 +1010,8 @@
@@ -1088,8 +1010,8 @@ procedure Gnatchop is
exit;
when '-' =>
......@@ -278,7 +278,7 @@ Author: YunQiang Su <wzssyqa@gmail.com>
when 'c' =>
Compilation_Mode := True;
@@ -1767,9 +1689,13 @@
@@ -1767,9 +1689,13 @@ begin
-- Check presence of required executables
......
......@@ -8,7 +8,7 @@ Author: Nicolas Boulenguez <nicolas@debian.org>
--- a/src/gcc/ada/ali-util.adb
+++ b/src/gcc/ada/ali-util.adb
@@ -484,8 +484,10 @@
@@ -484,8 +484,10 @@ package body ALI.Util is
for D in ALIs.Table (A).First_Sdep .. ALIs.Table (A).Last_Sdep loop
Src := Source_Id (Get_Name_Table_Int (Sdep.Table (D).Sfile));
......@@ -23,7 +23,7 @@ Author: Nicolas Boulenguez <nicolas@debian.org>
-- of the source file in the table if checksums match.
--- a/src/gcc/ada/lib-writ.adb
+++ b/src/gcc/ada/lib-writ.adb
@@ -1471,7 +1471,14 @@
@@ -1471,7 +1471,14 @@ package body Lib.Writ is
Write_Info_Name_May_Be_Quoted (Fname);
Write_Info_Tab (25);
......@@ -41,7 +41,7 @@ Author: Nicolas Boulenguez <nicolas@debian.org>
--- a/src/gcc/ada/osint.adb
+++ b/src/gcc/ada/osint.adb
@@ -1674,6 +1674,20 @@
@@ -1674,6 +1674,20 @@ package body Osint is
Lib_Search_Directories.Set_Last (Primary_Directory);
Lib_Search_Directories.Table (Primary_Directory) := new String'("");
......@@ -64,7 +64,7 @@ Author: Nicolas Boulenguez <nicolas@debian.org>
------------------
--- a/src/gcc/ada/osint.ads
+++ b/src/gcc/ada/osint.ads
@@ -685,6 +685,17 @@
@@ -679,6 +679,17 @@ package Osint is
function Prep_Suffix return String;
-- The suffix used for pre-processed files
......@@ -84,7 +84,7 @@ Author: Nicolas Boulenguez <nicolas@debian.org>
Current_Main : File_Name_Type := No_File;
--- a/src/gcc/ada/s-os_lib.adb
+++ b/src/gcc/ada/s-os_lib.adb
@@ -1153,6 +1153,41 @@
@@ -1153,6 +1153,41 @@ package body System.OS_Lib is
return Result;
end Get_Object_Suffix;
......@@ -128,7 +128,7 @@ Author: Nicolas Boulenguez <nicolas@debian.org>
----------------------------------
--- a/src/gcc/ada/s-os_lib.ads
+++ b/src/gcc/ada/s-os_lib.ads
@@ -164,6 +164,13 @@
@@ -164,6 +164,13 @@ package System.OS_Lib is
-- component parts to be interpreted in the local time zone, and returns
-- an OS_Time. Returns Invalid_Time if the creation fails.
......
......@@ -4,7 +4,7 @@ Author: Nicolas Boulenguez <nicolas@debian.org>
--- a/src/gcc/ada/Make-generated.in
+++ b/src/gcc/ada/Make-generated.in
@@ -28,21 +28,21 @@
@@ -28,21 +28,21 @@ $(ADA_GEN_SUBDIR)/treeprs.ads : $(ADA_GE
-$(MKDIR) $(ADA_GEN_SUBDIR)/bldtools/treeprs
$(RM) $(addprefix $(ADA_GEN_SUBDIR)/bldtools/treeprs/,$(notdir $^))
$(CP) $^ $(ADA_GEN_SUBDIR)/bldtools/treeprs
......@@ -29,7 +29,7 @@ Author: Nicolas Boulenguez <nicolas@debian.org>
$(MOVE_IF_CHANGE) $(ADA_GEN_SUBDIR)/bldtools/sinfo/sinfo.h $(ADA_GEN_SUBDIR)/sinfo.h
$(ADA_GEN_SUBDIR)/snames.h $(ADA_GEN_SUBDIR)/snames.ads $(ADA_GEN_SUBDIR)/snames.adb : $(ADA_GEN_SUBDIR)/stamp-snames ; @true
@@ -50,7 +50,7 @@
@@ -50,7 +50,7 @@ $(ADA_GEN_SUBDIR)/stamp-snames : $(ADA_G
-$(MKDIR) $(ADA_GEN_SUBDIR)/bldtools/snamest
$(RM) $(addprefix $(ADA_GEN_SUBDIR)/bldtools/snamest/,$(notdir $^))
$(CP) $^ $(ADA_GEN_SUBDIR)/bldtools/snamest
......@@ -38,7 +38,7 @@ Author: Nicolas Boulenguez <nicolas@debian.org>
$(MOVE_IF_CHANGE) $(ADA_GEN_SUBDIR)/bldtools/snamest/snames.ns $(ADA_GEN_SUBDIR)/snames.ads
$(MOVE_IF_CHANGE) $(ADA_GEN_SUBDIR)/bldtools/snamest/snames.nb $(ADA_GEN_SUBDIR)/snames.adb
$(MOVE_IF_CHANGE) $(ADA_GEN_SUBDIR)/bldtools/snamest/snames.nh $(ADA_GEN_SUBDIR)/snames.h
@@ -61,7 +61,7 @@
@@ -61,7 +61,7 @@ $(ADA_GEN_SUBDIR)/stamp-nmake: $(ADA_GEN
-$(MKDIR) $(ADA_GEN_SUBDIR)/bldtools/nmake
$(RM) $(addprefix $(ADA_GEN_SUBDIR)/bldtools/nmake/,$(notdir $^))
$(CP) $^ $(ADA_GEN_SUBDIR)/bldtools/nmake
......@@ -49,7 +49,7 @@ Author: Nicolas Boulenguez <nicolas@debian.org>
touch $(ADA_GEN_SUBDIR)/stamp-nmake
--- a/src/gcc/ada/gcc-interface/Makefile.in
+++ b/src/gcc/ada/gcc-interface/Makefile.in
@@ -612,7 +612,7 @@
@@ -2777,7 +2777,7 @@ OSCONS_EXTRACT=$(OSCONS_CC) $(GNATLIBCFL
-$(MKDIR) ./bldtools/oscons
$(RM) $(addprefix ./bldtools/oscons/,$(notdir $^))
$(CP) $^ ./bldtools/oscons
......
# DP: Set MULTILIB_DEFAULTS for ARM multilib builds
Index: b/src/gcc/config.gcc
===================================================================
--- a/src/gcc/config.gcc
+++ b/src/gcc/config.gcc
@@ -3774,10 +3774,18 @@ case "${target}" in
@@ -3776,10 +3776,18 @@ case "${target}" in
done
case "$with_float" in
......@@ -25,7 +23,7 @@ Index: b/src/gcc/config.gcc
*)
echo "Unknown floating point type used in --with-float=$with_float" 1>&2
exit 1
@@ -3811,6 +3819,9 @@ case "${target}" in
@@ -3813,6 +3821,9 @@ case "${target}" in
"" \
| arm | thumb )
#OK
......@@ -35,8 +33,6 @@ Index: b/src/gcc/config.gcc
;;
*)
echo "Unknown mode used in --with-mode=$with_mode"
Index: b/src/gcc/config/arm/linux-eabi.h
===================================================================
--- a/src/gcc/config/arm/linux-eabi.h
+++ b/src/gcc/config/arm/linux-eabi.h
@@ -43,7 +43,21 @@
......
# DP: Use /usr/include/<multiarch>/c++/4.x as the include directory
# DP: for host dependent c++ header files.
Index: b/src/libstdc++-v3/include/Makefile.am
===================================================================
--- a/src/libstdc++-v3/include/Makefile.am
+++ b/src/libstdc++-v3/include/Makefile.am
@@ -924,7 +924,7 @@ endif
@@ -923,7 +923,7 @@ endif
host_srcdir = ${glibcxx_srcdir}/$(OS_INC_SRCDIR)
host_builddir = ./${host_alias}/bits
......@@ -14,11 +12,9 @@ Index: b/src/libstdc++-v3/include/Makefile.am
host_headers = \
${host_srcdir}/ctype_base.h \
${host_srcdir}/ctype_inline.h \
Index: b/src/libstdc++-v3/include/Makefile.in
===================================================================
--- a/src/libstdc++-v3/include/Makefile.in
+++ b/src/libstdc++-v3/include/Makefile.in
@@ -1209,7 +1209,7 @@ profile_impl_headers = \
@@ -1208,7 +1208,7 @@ profile_impl_headers = \
@GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE@c_compatibility_headers_extra = ${c_compatibility_headers}
host_srcdir = ${glibcxx_srcdir}/$(OS_INC_SRCDIR)
host_builddir = ./${host_alias}/bits
......@@ -27,8 +23,6 @@ Index: b/src/libstdc++-v3/include/Makefile.in
host_headers = \
${host_srcdir}/ctype_base.h \
${host_srcdir}/ctype_inline.h \
Index: b/src/gcc/Makefile.in
===================================================================
--- a/src/gcc/Makefile.in
+++ b/src/gcc/Makefile.in
@@ -1150,6 +1150,7 @@ FLAGS_TO_PASS = \
......@@ -63,8 +57,6 @@ Index: b/src/gcc/Makefile.in
-DGPLUSPLUS_BACKWARD_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/backward\" \
-DLOCAL_INCLUDE_DIR=\"$(local_includedir)\" \
-DCROSS_INCLUDE_DIR=\"$(CROSS_SYSTEM_HEADER_DIR)\" \
Index: b/src/gcc/cppdefault.c
===================================================================
--- a/src/gcc/cppdefault.c
+++ b/src/gcc/cppdefault.c
@@ -49,6 +49,8 @@ const struct default_include cpp_include
......@@ -76,8 +68,6 @@ Index: b/src/gcc/cppdefault.c
#endif
#ifdef GPLUSPLUS_BACKWARD_INCLUDE_DIR
/* Pick up GNU C++ backward and deprecated include files. */
Index: b/src/gcc/incpath.c
===================================================================
--- a/src/gcc/incpath.c
+++ b/src/gcc/incpath.c
@@ -158,6 +158,18 @@ add_standard_paths (const char *sysroot,
......
......@@ -15,11 +15,9 @@ If the linker supports --push-state/--pop-state, we should IMHO use it.
--no-as-needed if ld supports it.
* configure: Regenerated.
Index: b/src/gcc/configure.ac
===================================================================
--- a/src/gcc/configure.ac
+++ b/src/gcc/configure.ac
@@ -5371,11 +5371,21 @@ if test $in_tree_ld = yes ; then
@@ -5372,11 +5372,21 @@ if test $in_tree_ld = yes ; then
if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 16 -o "$gcc_cv_gld_major_version" -gt 2 \
&& test $in_tree_ld_is_elf = yes; then
gcc_cv_ld_as_needed=yes
......
# DP: Allow to use lld with -fuse-ld=ld.lld
Index: b/src/gcc/collect2.c
===================================================================
--- a/src/gcc/collect2.c
+++ b/src/gcc/collect2.c
@@ -831,6 +831,7 @@ main (int argc, char **argv)
......@@ -22,7 +20,7 @@ Index: b/src/gcc/collect2.c
};
static const char *const real_ld_suffix = "real-ld";
static const char *const collect_ld_suffix = "collect-ld";
@@ -1004,6 +1006,8 @@ main (int argc, char **argv)
@@ -1007,6 +1009,8 @@ main (int argc, char **argv)
selected_linker = USE_BFD_LD;
else if (strcmp (argv[i], "-fuse-ld=gold") == 0)
selected_linker = USE_GOLD_LD;
......@@ -31,7 +29,7 @@ Index: b/src/gcc/collect2.c
#ifdef COLLECT_EXPORT_LIST
/* These flags are position independent, although their order
@@ -1093,7 +1097,8 @@ main (int argc, char **argv)
@@ -1096,7 +1100,8 @@ main (int argc, char **argv)
/* Maybe we know the right file to use (if not cross). */
ld_file_name = 0;
#ifdef DEFAULT_LINKER
......@@ -41,7 +39,7 @@ Index: b/src/gcc/collect2.c
{
char *linker_name;
# ifdef HOST_EXECUTABLE_SUFFIX
@@ -1307,7 +1312,7 @@ main (int argc, char **argv)
@@ -1315,7 +1320,7 @@ main (int argc, char **argv)
else if (!use_collect_ld
&& strncmp (arg, "-fuse-ld=", 9) == 0)
{
......@@ -50,8 +48,6 @@ Index: b/src/gcc/collect2.c
ld1--;
ld2--;
}
Index: b/src/gcc/common.opt
===================================================================
--- a/src/gcc/common.opt
+++ b/src/gcc/common.opt
@@ -2635,9 +2635,13 @@ Common Driver Negative(fuse-ld=gold)
......@@ -69,11 +65,9 @@ Index: b/src/gcc/common.opt
fuse-linker-plugin
Common Undocumented Var(flag_use_linker_plugin)
Index: b/src/gcc/opts.c
===================================================================
--- a/src/gcc/opts.c
+++ b/src/gcc/opts.c
@@ -2328,6 +2328,7 @@ common_handle_option (struct gcc_options
@@ -2348,6 +2348,7 @@ common_handle_option (struct gcc_options
case OPT_fuse_ld_bfd:
case OPT_fuse_ld_gold:
......
......@@ -7,7 +7,7 @@
--- a/src/gcc/config.gcc
+++ b/src/gcc/config.gcc
@@ -1339,7 +1339,7 @@
@@ -1307,7 +1307,7 @@ hppa*64*-*-linux*)
gas=yes gnu_ld=yes
;;
hppa*-*-linux*)
......
# DP: Report an ICE to apport (if apport is available
# DP: and the environment variable GCC_NOAPPORT is not set)
Index: b/src/gcc/gcc.c
===================================================================
--- a/src/gcc/gcc.c
+++ b/src/gcc/gcc.c
@@ -6903,6 +6903,16 @@ do_report_bug (const char **new_argv, co
@@ -6922,6 +6922,16 @@ do_report_bug (const char **new_argv, co
fflush(stderr);
free(cmd);
}
......
# DP: For ICEs, dump the preprocessed source file to stderr
# DP: when in a distro build environment.
Index: b/src/gcc/gcc.c
===================================================================
--- a/src/gcc/gcc.c
+++ b/src/gcc/gcc.c
@@ -3163,7 +3163,8 @@ execute (void)
@@ -3182,7 +3182,8 @@ execute (void)
/* For ICEs in cc1, cc1obj, cc1plus see if it is
reproducible or not. */
const char *p;
......@@ -15,7 +13,7 @@ Index: b/src/gcc/gcc.c
&& WEXITSTATUS (status) == ICE_EXIT_CODE
&& i == 0
&& (p = strrchr (commands[0].argv[0], DIR_SEPARATOR))
@@ -6885,8 +6886,23 @@ do_report_bug (const char **new_argv, co
@@ -6904,8 +6905,23 @@ do_report_bug (const char **new_argv, co
if (status == ATTEMPT_STATUS_SUCCESS)
{
......
# DP: Changes for the Linaro 7-2018.04 snapshot (documentation).
# DP: Changes for the Linaro 7-2019.01 snapshot (documentation).
--- a/src/gcc/doc/install.texi
+++ b/src/gcc/doc/install.texi
......@@ -50,7 +50,7 @@
@emph{Adapteva Epiphany Options}
@gccoptlist{-mhalf-reg-file -mprefer-short-insn-regs @gol
@@ -13967,7 +13966,7 @@ support for the ARMv8.2-A architecture extensions.
@@ -13969,7 +13968,7 @@ support for the ARMv8.2-A architecture extensions.
The value @samp{armv8.1-a} implies @samp{armv8-a} and enables compiler
support for the ARMv8.1-A architecture extension. In particular, it
......@@ -59,7 +59,7 @@
The value @samp{native} is available on native AArch64 GNU/Linux and
causes the compiler to pick the architecture of the host system. This
@@ -14040,8 +14039,10 @@ across releases.
@@ -14042,8 +14041,10 @@ across releases.
This option is only intended to be useful when developing GCC.
@item -mpc-relative-literal-loads
......@@ -71,7 +71,7 @@
accessed using a single instruction and emitted after each function. This
limits the maximum size of functions to 1MB. This is enabled by default for
@option{-mcmodel=tiny}.
@@ -14080,8 +14081,17 @@ instructions. This is on by default for all possible values for options
@@ -14082,8 +14083,17 @@ instructions. This is on by default for all possible values for options
@item lse
Enable Large System Extension instructions. This is on by default for
@option{-march=armv8.1-a}.
......@@ -89,7 +89,7 @@
@end table
@@ -15095,6 +15105,15 @@ ARMv8.2-A architecture with the optional FP16 instructions extension.
@@ -15097,6 +15107,15 @@ ARMv8.2-A architecture with the optional FP16 instructions extension.
This also enables the features provided by @option{-march=armv8.1-a}
and implies @option{-mfp16-format=ieee}.
......
......@@ -89,4 +89,4 @@ Index: b/src/gcc/LINARO-VERSION
--- a/src/gcc/LINARO-VERSION
+++ /dev/null
@@ -1,1 +0,0 @@
-7.3-2018.04~dev
-Snapshot 7.4-2019.01
# DP: Revert r270684, already applied to the Linaro branch
--- a/src/gcc/testsuite/gcc.target/aarch64/pr90075.c
+++ b/src/gcc/testsuite/gcc.target/aarch64/pr90075.c
@@ -1,21 +0,0 @@
-/* { dg-do compile } */
-/* { dg-additional-options "-O1" } */
-
-typedef struct {
- float one, two;
-} twofloats;
-
-float
-bug (twofloats tf)
-{
- float f1, f2;
- union {
- twofloats tfloats;
- float arr[2];
- } utfloats;
-
- utfloats.tfloats = tf;
- f1 = utfloats.arr[1];
- f2 = __builtin_copysignf (0, f1);
- return f2;
-}
--- a/src/gcc/config/aarch64/iterators.md
+++ b/src/gcc/config/aarch64/iterators.md
@@ -438,8 +438,7 @@
(define_mode_attr sizen [(QI "8") (HI "16") (SI "32") (DI "64")])
;; Give the ordinal of the MSB in the mode
-(define_mode_attr sizem1 [(QI "#7") (HI "#15") (SI "#31") (DI "#63")
- (HF "#15") (SF "#31") (DF "#63")])
+(define_mode_attr sizem1 [(QI "#7") (HI "#15") (SI "#31") (DI "#63")])
;; Attribute to describe constants acceptable in logical operations
(define_mode_attr lconst [(SI "K") (DI "L")])
@@ -508,7 +507,7 @@
(V8HF "16b") (V2SF "8b")
(V4SF "16b") (V2DF "16b")
(DI "8b") (DF "8b")
- (SI "8b") (SF "8b")])
+ (SI "8b")])
;; Define element mode for each vector mode.
(define_mode_attr VEL [(V8QI "QI") (V16QI "QI")
@@ -649,9 +648,6 @@
;; Double vector types for ALLX.
(define_mode_attr Vallxd [(QI "8b") (HI "4h") (SI "2s")])
-;; Mode with floating-point values replaced by like-sized integers.
-(define_mode_attr V_INT_EQUIV [(DF "DI") (SF "SI")])
-
;; Mode of result of comparison operations.
(define_mode_attr V_cmp_result [(V8QI "V8QI") (V16QI "V16QI")
(V4HI "V4HI") (V8HI "V8HI")
--- a/src/gcc/config/aarch64/aarch64.md
+++ b/src/gcc/config/aarch64/aarch64.md
@@ -140,7 +140,6 @@
UNSPEC_RSQRTS
UNSPEC_NZCV
UNSPEC_XPACLRI
- UNSPEC_COPYSIGN
])
(define_c_enum "unspecv" [
@@ -5004,45 +5003,45 @@
;; LDR d2, #(1 << 63)
;; BSL v2.8b, [y], [x]
;;
-;; or another, equivalent, sequence using one of BSL/BIT/BIF. Because
-;; we expect these operations to nearly always operate on
-;; floating-point values, we do not want the operation to be
-;; simplified into a bit-field insert operation that operates on the
-;; integer side, since typically that would involve three inter-bank
-;; register copies. As we do not expect copysign to be followed by
-;; other logical operations on the result, it seems preferable to keep
-;; this as an unspec operation, rather than exposing the underlying
-;; logic to the compiler.
+;; or another, equivalent, sequence using one of BSL/BIT/BIF.
+;; aarch64_simd_bsldf will select the best suited of these instructions
+;; to generate based on register allocation, and knows how to partially
+;; constant fold based on the values of X and Y, so expand through that.
-(define_expand "copysign<GPF:mode>3"
- [(match_operand:GPF 0 "register_operand")
- (match_operand:GPF 1 "register_operand")
- (match_operand:GPF 2 "register_operand")]
+(define_expand "copysigndf3"
+ [(match_operand:DF 0 "register_operand")
+ (match_operand:DF 1 "register_operand")
+ (match_operand:DF 2 "register_operand")]
"TARGET_FLOAT && TARGET_SIMD"
{
- rtx bitmask = gen_reg_rtx (<V_INT_EQUIV>mode);
- emit_move_insn (bitmask, GEN_INT (HOST_WIDE_INT_M1U
- << (GET_MODE_BITSIZE (<MODE>mode) - 1)));
- emit_insn (gen_copysign<mode>3_insn (operands[0], operands[1], operands[2],
- bitmask));
+ rtx mask = gen_reg_rtx (DImode);
+ emit_move_insn (mask, GEN_INT (HOST_WIDE_INT_1U << 63));
+ emit_insn (gen_aarch64_simd_bsldf (operands[0], mask,
+ operands[2], operands[1]));
DONE;
}
)
-(define_insn "copysign<GPF:mode>3_insn"
- [(set (match_operand:GPF 0 "register_operand" "=w,w,w,r")
- (unspec:GPF [(match_operand:GPF 1 "register_operand" "w,0,w,r")
- (match_operand:GPF 2 "register_operand" "w,w,0,0")
- (match_operand:<V_INT_EQUIV> 3 "register_operand"
- "0,w,w,X")]
- UNSPEC_COPYSIGN))]
+;; As above, but we must first get to a 64-bit value if we wish to use
+;; aarch64_simd_bslv2sf.
+
+(define_expand "copysignsf3"
+ [(match_operand:SF 0 "register_operand")
+ (match_operand:SF 1 "register_operand")
+ (match_operand:SF 2 "register_operand")]
"TARGET_FLOAT && TARGET_SIMD"
- "@
- bsl\\t%0.<Vbtype>, %2.<Vbtype>, %1.<Vbtype>
- bit\\t%0.<Vbtype>, %2.<Vbtype>, %3.<Vbtype>
- bif\\t%0.<Vbtype>, %1.<Vbtype>, %3.<Vbtype>
- bfxil\\t%<w1>0, %<w1>1, #0, <sizem1>"
- [(set_attr "type" "neon_bsl<q>,neon_bsl<q>,neon_bsl<q>,bfm")]
+{
+ rtx mask = gen_reg_rtx (DImode);
+
+ /* Juggle modes to get us in to a vector mode for BSL. */
+ rtx op1 = lowpart_subreg (V2SFmode, operands[1], SFmode);
+ rtx op2 = lowpart_subreg (V2SFmode, operands[2], SFmode);
+ rtx tmp = gen_reg_rtx (V2SFmode);
+ emit_move_insn (mask, GEN_INT (HOST_WIDE_INT_1U << 31));
+ emit_insn (gen_aarch64_simd_bslv2sf (tmp, mask, op2, op1));
+ emit_move_insn (operands[0], lowpart_subreg (SFmode, tmp, V2SFmode));
+ DONE;
+}
)
;; -------------------------------------------------------------------
This diff is collapsed.
......@@ -15,8 +15,6 @@
* config/sparc/t-linux64: Set MULTIARCH_DIRNAME.
* src/gcc/config/mips/mips.h: (/usr)/lib as default path.
Index: b/src/gcc/config/sh/t-linux
===================================================================
--- a/src/gcc/config/sh/t-linux
+++ b/src/gcc/config/sh/t-linux
@@ -1,2 +1,10 @@
......@@ -30,8 +28,6 @@ Index: b/src/gcc/config/sh/t-linux
+MULTILIB_OSDIRNAMES = .:sh3-linux-gnu sh3_nofpu-linux-gnu:sh3-linux-gnu
+MULTIARCH_DIRNAME = $(call if_multiarch,sh3-linux-gnu)
+endif
Index: b/src/gcc/config/sparc/t-linux64
===================================================================
--- a/src/gcc/config/sparc/t-linux64
+++ b/src/gcc/config/sparc/t-linux64
@@ -27,3 +27,5 @@ MULTILIB_OPTIONS = m64/m32
......@@ -40,8 +36,6 @@ Index: b/src/gcc/config/sparc/t-linux64
MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:sparc-linux-gnu)
+
+MULTIARCH_DIRNAME = $(call if_multiarch,sparc$(if $(findstring 64,$(target)),64)-linux-gnu)
Index: b/src/gcc/config/s390/t-linux64
===================================================================
--- a/src/gcc/config/s390/t-linux64
+++ b/src/gcc/config/s390/t-linux64
@@ -9,3 +9,5 @@ MULTILIB_OPTIONS = m64/m31
......@@ -50,8 +44,6 @@ Index: b/src/gcc/config/s390/t-linux64
MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:s390-linux-gnu)
+
+MULTIARCH_DIRNAME = $(call if_multiarch,s390$(if $(findstring s390x,$(target)),x)-linux-gnu)
Index: b/src/gcc/config/rs6000/t-linux64
===================================================================
--- a/src/gcc/config/rs6000/t-linux64
+++ b/src/gcc/config/rs6000/t-linux64
@@ -31,6 +31,8 @@ MULTILIB_EXTRA_OPTS :=
......@@ -63,8 +55,6 @@ Index: b/src/gcc/config/rs6000/t-linux64
rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.c
$(COMPILE) $<
$(POSTCOMPILE)
Index: b/src/gcc/config/i386/t-linux64
===================================================================
--- a/src/gcc/config/i386/t-linux64
+++ b/src/gcc/config/i386/t-linux64
@@ -36,3 +36,13 @@ MULTILIB_DIRNAMES = $(patsubst m%, %,
......@@ -81,8 +71,6 @@ Index: b/src/gcc/config/i386/t-linux64
+else
+ MULTIARCH_DIRNAME = $(call if_multiarch,i386-linux-gnu)
+endif
Index: b/src/gcc/config/i386/t-kfreebsd
===================================================================
--- a/src/gcc/config/i386/t-kfreebsd
+++ b/src/gcc/config/i386/t-kfreebsd
@@ -1,5 +1,9 @@
......@@ -96,8 +84,6 @@ Index: b/src/gcc/config/i386/t-kfreebsd
MULTILIB_OSDIRNAMES := $(filter-out mx32=%,$(subst linux,$(KFREEBSD_OS),$(MULTILIB_OSDIRNAMES)))
+
+MULTIARCH_DIRNAME := $(subst linux,$(KFREEBSD_OS),$(MULTIARCH_DIRNAME))
Index: b/src/gcc/config/mips/t-linux64
===================================================================
--- a/src/gcc/config/mips/t-linux64
+++ b/src/gcc/config/mips/t-linux64
@@ -18,9 +18,22 @@
......@@ -123,11 +109,9 @@ Index: b/src/gcc/config/mips/t-linux64
+MULTIARCH_DIRNAME = $(call if_multiarch,mips$(MIPS_ISA)$(MIPS_32)$(MIPS_R6)$(MIPS_EL)-linux-gnu$(MIPS_SOFT))
+endif
+endif
Index: b/src/gcc/config.gcc
===================================================================
--- a/src/gcc/config.gcc
+++ b/src/gcc/config.gcc
@@ -2113,6 +2113,11 @@ mips*-*-linux*) # Linux MIPS, either
@@ -2115,6 +2115,11 @@ mips*-*-linux*) # Linux MIPS, either
target_cpu_default=MASK_SOFT_FLOAT_ABI
enable_mips_multilibs="yes"
;;
......@@ -139,7 +123,7 @@ Index: b/src/gcc/config.gcc
mipsisa64r6*-*-linux*)
default_mips_abi=n32
default_mips_arch=mips64r6
@@ -2123,6 +2128,10 @@ mips*-*-linux*) # Linux MIPS, either
@@ -2125,6 +2130,10 @@ mips*-*-linux*) # Linux MIPS, either
default_mips_arch=mips64r2
enable_mips_multilibs="yes"
;;
......@@ -150,7 +134,7 @@ Index: b/src/gcc/config.gcc
mips64*-*-linux* | mipsisa64*-*-linux*)
default_mips_abi=n32
enable_mips_multilibs="yes"
@@ -3111,6 +3120,16 @@ powerpc*-*-* | rs6000-*-*)
@@ -3113,6 +3122,16 @@ powerpc*-*-* | rs6000-*-*)
tm_file="${tm_file} rs6000/option-defaults.h"
esac
......@@ -167,7 +151,7 @@ Index: b/src/gcc/config.gcc
# Build mkoffload tool
case ${target} in
*-intelmic-* | *-intelmicemul-*)
@@ -4558,7 +4577,7 @@ case ${target} in
@@ -4560,7 +4579,7 @@ case ${target} in
i[34567]86-*-darwin* | x86_64-*-darwin*)
;;
i[34567]86-*-linux* | x86_64-*-linux*)
......@@ -176,8 +160,6 @@ Index: b/src/gcc/config.gcc
;;
i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu)
tmake_file="$tmake_file i386/t-kfreebsd"
Index: b/src/gcc/config/aarch64/t-aarch64-linux
===================================================================
--- a/src/gcc/config/aarch64/t-aarch64-linux
+++ b/src/gcc/config/aarch64/t-aarch64-linux
@@ -22,7 +22,7 @@ LIB1ASMSRC = aarch64/lib1funcs.asm
......@@ -191,8 +173,6 @@ Index: b/src/gcc/config/aarch64/t-aarch64-linux
-MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32
+MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu)
Index: b/src/gcc/config/mips/mips.h
===================================================================
--- a/src/gcc/config/mips/mips.h
+++ b/src/gcc/config/mips/mips.h
@@ -3499,16 +3499,6 @@ struct GTY(()) machine_function {
......@@ -212,8 +192,6 @@ Index: b/src/gcc/config/mips/mips.h
/* Load store bonding is not supported by micromips and fix_24k. The
performance can be degraded for those targets. Hence, do not bond for
micromips or fix_24k. */
Index: b/src/gcc/config/tilegx/t-tilegx
===================================================================
--- a/src/gcc/config/tilegx/t-tilegx
+++ b/src/gcc/config/tilegx/t-tilegx
@@ -1,6 +1,7 @@
......@@ -225,9 +203,6 @@ Index: b/src/gcc/config/tilegx/t-tilegx
LIBGCC = stmp-multilib
INSTALL_LIBGCC = install-multilib
Index: b/src/gcc/config/riscv/t-linux
===================================================================
--- a/src/gcc/config/riscv/t-linux
+++ b/src/gcc/config/riscv/t-linux
@@ -1,3 +1,5 @@
......@@ -236,8 +211,6 @@ Index: b/src/gcc/config/riscv/t-linux
MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES))
+
+MULTIARCH_DIRNAME := $(call if_multiarch,$(firstword $(subst -, ,$(target)))-linux-gnu)
Index: b/src/gcc/Makefile.in
===================================================================
--- a/src/gcc/Makefile.in
+++ b/src/gcc/Makefile.in
@@ -521,7 +521,7 @@ SYSTEM_HEADER_DIR = `echo @SYSTEM_HEADER
......@@ -249,15 +222,11 @@ Index: b/src/gcc/Makefile.in
# Directory for prefix to system directories, for
# each of $(system_prefix)/usr/include, $(system_prefix)/usr/lib, etc.
Index: b/src/gcc/config/t-musl
===================================================================
--- /dev/null
+++ b/src/gcc/config/t-musl
@@ -0,0 +1,2 @@
+MULTIARCH_DIRNAME := $(subst -linux-gnu,-linux-musl,$(MULTIARCH_DIRNAME))
+MULTILIB_OSDIRNAMES := $(subst -linux-gnu,-linux-musl,$(MULTILIB_OSDIRNAMES))
Index: b/src/gcc/config/t-uclibc
===================================================================
--- /dev/null
+++ b/src/gcc/config/t-uclibc
@@ -0,0 +1,2 @@
......
......@@ -2,7 +2,7 @@
--- a/src/gcc/gcc.c
+++ b/src/gcc/gcc.c
@@ -2534,6 +2534,7 @@
@@ -2533,6 +2533,7 @@ for_each_path (const struct path_prefix
{
len = paths->max_len + extra_space + 1;
len += MAX (MAX (suffix_len, multi_os_dir_len), multiarch_len);
......@@ -10,7 +10,7 @@
path = XNEWVEC (char, len);
}
@@ -2747,6 +2748,24 @@
@@ -2746,6 +2747,24 @@ file_at_path (char *path, void *data)
struct file_at_path_info *info = (struct file_at_path_info *) data;
size_t len = strlen (path);
......
# DP: This implements D language support in the GCC back end, and adds
# DP: relevant documentation about the GDC front end (code part).
Index: b/src/gcc/config/darwin.h
===================================================================
--- a/src/gcc/config/darwin.h
+++ b/src/gcc/config/darwin.h
@@ -49,6 +49,10 @@ see the files COPYING3 and COPYING.RUNTI
......@@ -16,8 +14,6 @@ Index: b/src/gcc/config/darwin.h
/* We have atexit. */
#define HAVE_ATEXIT
Index: b/src/gcc/config/i386/cygming.h
===================================================================
--- a/src/gcc/config/i386/cygming.h
+++ b/src/gcc/config/i386/cygming.h
@@ -181,6 +181,10 @@ along with GCC; see the file COPYING3.
......@@ -31,8 +27,6 @@ Index: b/src/gcc/config/i386/cygming.h
#undef TARGET_LIBC_HAS_FUNCTION
#define TARGET_LIBC_HAS_FUNCTION no_c99_libc_has_function
Index: b/src/gcc/config/linux-android.h
===================================================================
--- a/src/gcc/config/linux-android.h
+++ b/src/gcc/config/linux-android.h
@@ -57,3 +57,9 @@
......@@ -45,11 +39,9 @@ Index: b/src/gcc/config/linux-android.h
+# define THREAD_LIBRARY ""
+# define TIME_LIBRARY ""
+#endif
Index: b/src/gcc/config/rs6000/rs6000.c
===================================================================
--- a/src/gcc/config/rs6000/rs6000.c
+++ b/src/gcc/config/rs6000/rs6000.c
@@ -31629,7 +31629,8 @@ rs6000_output_function_epilogue (FILE *f
@@ -31647,7 +31647,8 @@ rs6000_output_function_epilogue (FILE *f
if (lang_GNU_C ()
|| ! strcmp (language_string, "GNU GIMPLE")
|| ! strcmp (language_string, "GNU Go")
......@@ -59,11 +51,9 @@ Index: b/src/gcc/config/rs6000/rs6000.c
i = 0;
else if (! strcmp (language_string, "GNU F77")
|| lang_GNU_Fortran ())
Index: b/src/gcc/dwarf2out.c
===================================================================
--- a/src/gcc/dwarf2out.c
+++ b/src/gcc/dwarf2out.c
@@ -5083,6 +5083,16 @@ is_ada (void)
@@ -5090,6 +5090,16 @@ is_ada (void)
return lang == DW_LANG_Ada95 || lang == DW_LANG_Ada83;
}
......@@ -80,7 +70,7 @@ Index: b/src/gcc/dwarf2out.c
/* Remove the specified attribute if present. Return TRUE if removal
was successful. */
@@ -23607,6 +23617,8 @@ gen_compile_unit_die (const char *filena
@@ -23616,6 +23626,8 @@ gen_compile_unit_die (const char *filena
language = DW_LANG_ObjC;
else if (strcmp (language_string, "GNU Objective-C++") == 0)
language = DW_LANG_ObjC_plus_plus;
......@@ -89,7 +79,7 @@ Index: b/src/gcc/dwarf2out.c
else if (dwarf_version >= 5 || !dwarf_strict)
{
if (strcmp (language_string, "GNU Go") == 0)
@@ -25191,7 +25203,7 @@ declare_in_namespace (tree thing, dw_die
@@ -25200,7 +25212,7 @@ declare_in_namespace (tree thing, dw_die
if (ns_context != context_die)
{
......@@ -98,7 +88,7 @@ Index: b/src/gcc/dwarf2out.c
return ns_context;
if (DECL_P (thing))
gen_decl_die (thing, NULL, NULL, ns_context);
@@ -25214,7 +25226,7 @@ gen_namespace_die (tree decl, dw_die_ref
@@ -25223,7 +25235,7 @@ gen_namespace_die (tree decl, dw_die_ref
{
/* Output a real namespace or module. */
context_die = setup_namespace_context (decl, comp_unit_die ());
......@@ -107,7 +97,7 @@ Index: b/src/gcc/dwarf2out.c
? DW_TAG_module : DW_TAG_namespace,
context_die, decl);
/* For Fortran modules defined in different CU don't add src coords. */
@@ -25281,7 +25293,7 @@ gen_decl_die (tree decl, tree origin, st
@@ -25290,7 +25302,7 @@ gen_decl_die (tree decl, tree origin, st
break;
case CONST_DECL:
......@@ -116,7 +106,7 @@ Index: b/src/gcc/dwarf2out.c
{
/* The individual enumerators of an enum type get output when we output
the Dwarf representation of the relevant enum type itself. */
@@ -25834,7 +25846,7 @@ dwarf2out_decl (tree decl)
@@ -25843,7 +25855,7 @@ dwarf2out_decl (tree decl)
case CONST_DECL:
if (debug_info_level <= DINFO_LEVEL_TERSE)
return;
......@@ -125,8 +115,6 @@ Index: b/src/gcc/dwarf2out.c
return;
if (TREE_STATIC (decl) && decl_function_context (decl))
context_die = lookup_decl_die (DECL_CONTEXT (decl));
Index: b/src/gcc/gcc.c
===================================================================
--- a/src/gcc/gcc.c
+++ b/src/gcc/gcc.c
@@ -1307,6 +1307,7 @@ static const struct compiler default_com
......
# DP: Build idgen.dmdgen.o with the build compiler
--- a/src/gcc/d/Make-lang.in
+++ b/src/gcc/d/Make-lang.in
@@ -315,7 +315,7 @@
+$(LINKER_FOR_BUILD) $(BUILD_LINKER_FLAGS) $(BUILD_LDFLAGS) -o $@ $^
d/idgen.dmdgen.o: d/dfrontend/idgen.c
- $(filter-out -fprofile-%,$(DMD_COMPILE)) $(D_INCLUDES) $<
+ $(filter-out -fprofile-%,$(DMDGEN_COMPILE)) $(D_INCLUDES) $<
$(POSTCOMPILE)
d/impcnvgen.dmdgen.o: $(srcdir)/d/dfrontend/impcnvgen.c
......@@ -43,8 +43,6 @@ for all supported architectures. And these where appropriate:
** SPARC_HardFloat
** SPARC_SoftFloat
Index: b/src/gcc/config/aarch64/aarch64.h
===================================================================
--- a/src/gcc/config/aarch64/aarch64.h
+++ b/src/gcc/config/aarch64/aarch64.h
@@ -26,6 +26,14 @@
......@@ -62,8 +60,6 @@ Index: b/src/gcc/config/aarch64/aarch64.h
#define REGISTER_TARGET_PRAGMAS() aarch64_register_pragmas ()
Index: b/src/gcc/config/alpha/alpha.h
===================================================================
--- a/src/gcc/config/alpha/alpha.h
+++ b/src/gcc/config/alpha/alpha.h
@@ -72,6 +72,23 @@ along with GCC; see the file COPYING3.
......@@ -90,8 +86,6 @@ Index: b/src/gcc/config/alpha/alpha.h
#ifndef SUBTARGET_LANGUAGE_CPP_BUILTINS
#define SUBTARGET_LANGUAGE_CPP_BUILTINS() \
do \
Index: b/src/gcc/config/arm/arm.h
===================================================================
--- a/src/gcc/config/arm/arm.h
+++ b/src/gcc/config/arm/arm.h
@@ -47,6 +47,31 @@ extern char arm_arch_name[];
......@@ -126,8 +120,6 @@ Index: b/src/gcc/config/arm/arm.h
#include "config/arm/arm-opts.h"
/* The processor for which instructions should be scheduled. */
Index: b/src/gcc/config/i386/i386.h
===================================================================
--- a/src/gcc/config/i386/i386.h
+++ b/src/gcc/config/i386/i386.h
@@ -671,6 +671,24 @@ extern const char *host_detect_local_cpu
......@@ -155,8 +147,6 @@ Index: b/src/gcc/config/i386/i386.h
/* Target Pragmas. */
#define REGISTER_TARGET_PRAGMAS() ix86_register_pragmas ()
Index: b/src/gcc/config/ia64/ia64.h
===================================================================
--- a/src/gcc/config/ia64/ia64.h
+++ b/src/gcc/config/ia64/ia64.h
@@ -40,6 +40,13 @@ do { \
......@@ -173,8 +163,6 @@ Index: b/src/gcc/config/ia64/ia64.h
#ifndef SUBTARGET_EXTRA_SPECS
#define SUBTARGET_EXTRA_SPECS
#endif
Index: b/src/gcc/config/mips/mips.h
===================================================================
--- a/src/gcc/config/mips/mips.h
+++ b/src/gcc/config/mips/mips.h
@@ -644,6 +644,54 @@ struct mips_cpu_info {
......@@ -232,8 +220,6 @@ Index: b/src/gcc/config/mips/mips.h
/* Default target_flags if no switches are specified */
#ifndef TARGET_DEFAULT
Index: b/src/gcc/config/pa/pa.h
===================================================================
--- a/src/gcc/config/pa/pa.h
+++ b/src/gcc/config/pa/pa.h
@@ -179,6 +179,20 @@ do { \
......@@ -257,11 +243,9 @@ Index: b/src/gcc/config/pa/pa.h
/* An old set of OS defines for various BSD-like systems. */
#define TARGET_OS_CPP_BUILTINS() \
do \
Index: b/src/gcc/config/rs6000/rs6000.h
===================================================================
--- a/src/gcc/config/rs6000/rs6000.h
+++ b/src/gcc/config/rs6000/rs6000.h
@@ -822,6 +822,28 @@ extern unsigned char rs6000_recip_bits[]
@@ -824,6 +824,28 @@ extern unsigned char rs6000_recip_bits[]
#define TARGET_CPU_CPP_BUILTINS() \
rs6000_cpu_cpp_builtins (pfile)
......@@ -290,8 +274,6 @@ Index: b/src/gcc/config/rs6000/rs6000.h
/* This is used by rs6000_cpu_cpp_builtins to indicate the byte order
we're compiling for. Some configurations may need to override it. */
#define RS6000_CPU_CPP_ENDIAN_BUILTINS() \
Index: b/src/gcc/config/s390/s390.h
===================================================================
--- a/src/gcc/config/s390/s390.h
+++ b/src/gcc/config/s390/s390.h
@@ -194,6 +194,22 @@ enum processor_flags
......@@ -317,8 +299,6 @@ Index: b/src/gcc/config/s390/s390.h
#ifdef DEFAULT_TARGET_64BIT
#define TARGET_DEFAULT (MASK_64BIT | MASK_ZARCH | MASK_HARD_DFP \
| MASK_OPT_HTM | MASK_OPT_VX)
Index: b/src/gcc/config/sh/sh.h
===================================================================
--- a/src/gcc/config/sh/sh.h
+++ b/src/gcc/config/sh/sh.h
@@ -31,6 +31,19 @@ extern int code_for_indirect_jump_scratc
......@@ -341,8 +321,6 @@ Index: b/src/gcc/config/sh/sh.h
/* Value should be nonzero if functions must have frame pointers.
Zero means the frame pointer need not be set up (and parms may be accessed
via the stack pointer) in functions that seem suitable. */
Index: b/src/gcc/config/sparc/sparc.h
===================================================================
--- a/src/gcc/config/sparc/sparc.h
+++ b/src/gcc/config/sparc/sparc.h
@@ -27,6 +27,31 @@ along with GCC; see the file COPYING3.
......
......@@ -32,8 +32,6 @@ These official OS versions are not implemented:
* SkyOS
* SysV3
Index: b/src/gcc/config/alpha/linux.h
===================================================================
--- a/src/gcc/config/alpha/linux.h
+++ b/src/gcc/config/alpha/linux.h
@@ -33,6 +33,16 @@ along with GCC; see the file COPYING3.
......@@ -53,8 +51,6 @@ Index: b/src/gcc/config/alpha/linux.h
#undef LIB_SPEC
#define LIB_SPEC \
"%{pthread:-lpthread} \
Index: b/src/gcc/config/arm/linux-eabi.h
===================================================================
--- a/src/gcc/config/arm/linux-eabi.h
+++ b/src/gcc/config/arm/linux-eabi.h
@@ -30,6 +30,15 @@
......@@ -73,11 +69,9 @@ Index: b/src/gcc/config/arm/linux-eabi.h
/* We default to a soft-float ABI so that binaries can run on all
target hardware. If you override this to use the hard-float ABI then
change the setting of GLIBC_DYNAMIC_LINKER_DEFAULT as well. */
Index: b/src/gcc/config/darwin.h
===================================================================
--- a/src/gcc/config/darwin.h
+++ b/src/gcc/config/darwin.h
@@ -972,4 +972,10 @@ extern void darwin_driver_init (unsigned
@@ -968,4 +968,10 @@ extern void darwin_driver_init (unsigned
#define DEF_LD64 LD64_VERSION
#endif
......@@ -88,8 +82,6 @@ Index: b/src/gcc/config/darwin.h
+ } while (0)
+
#endif /* CONFIG_DARWIN_H */
Index: b/src/gcc/config/freebsd.h
===================================================================
--- a/src/gcc/config/freebsd.h
+++ b/src/gcc/config/freebsd.h
@@ -32,6 +32,13 @@ along with GCC; see the file COPYING3.
......@@ -106,8 +98,6 @@ Index: b/src/gcc/config/freebsd.h
#undef CPP_SPEC
#define CPP_SPEC FBSD_CPP_SPEC
Index: b/src/gcc/config/gnu.h
===================================================================
--- a/src/gcc/config/gnu.h
+++ b/src/gcc/config/gnu.h
@@ -31,3 +31,11 @@ along with GCC. If not, see <http://www
......@@ -122,8 +112,6 @@ Index: b/src/gcc/config/gnu.h
+ builtin_define ("Hurd"); \
+ builtin_define ("Posix"); \
+ } while (0)
Index: b/src/gcc/config/i386/cygwin.h
===================================================================
--- a/src/gcc/config/i386/cygwin.h
+++ b/src/gcc/config/i386/cygwin.h
@@ -29,6 +29,13 @@ along with GCC; see the file COPYING3.
......@@ -140,8 +128,6 @@ Index: b/src/gcc/config/i386/cygwin.h
#undef CPP_SPEC
#define CPP_SPEC "%(cpp_cpu) %{posix:-D_POSIX_SOURCE} \
%{!ansi:-Dunix} \
Index: b/src/gcc/config/i386/linux-common.h
===================================================================
--- a/src/gcc/config/i386/linux-common.h
+++ b/src/gcc/config/i386/linux-common.h
@@ -27,6 +27,15 @@ along with GCC; see the file COPYING3.
......@@ -160,8 +146,6 @@ Index: b/src/gcc/config/i386/linux-common.h
#undef CC1_SPEC
#define CC1_SPEC \
LINUX_OR_ANDROID_CC (GNU_USER_TARGET_CC1_SPEC, \
Index: b/src/gcc/config/i386/mingw-w64.h
===================================================================
--- a/src/gcc/config/i386/mingw-w64.h
+++ b/src/gcc/config/i386/mingw-w64.h
@@ -89,3 +89,10 @@ along with GCC; see the file COPYING3.
......@@ -175,8 +159,6 @@ Index: b/src/gcc/config/i386/mingw-w64.h
+ TARGET_GENERIC_MINGW_OS_D_BUILTINS(); \
+ builtin_define ("GNU_MinGW64"); \
+ } while (0)
Index: b/src/gcc/config/i386/mingw32.h
===================================================================
--- a/src/gcc/config/i386/mingw32.h
+++ b/src/gcc/config/i386/mingw32.h
@@ -53,6 +53,18 @@ along with GCC; see the file COPYING3.
......@@ -198,8 +180,6 @@ Index: b/src/gcc/config/i386/mingw32.h
#ifndef TARGET_USE_PTHREAD_BY_DEFAULT
#define SPEC_PTHREAD1 "pthread"
#define SPEC_PTHREAD2 "!no-pthread"
Index: b/src/gcc/config/kfreebsd-gnu.h
===================================================================
--- a/src/gcc/config/kfreebsd-gnu.h
+++ b/src/gcc/config/kfreebsd-gnu.h
@@ -29,6 +29,14 @@ along with GCC; see the file COPYING3.
......@@ -217,8 +197,6 @@ Index: b/src/gcc/config/kfreebsd-gnu.h
#define GNU_USER_DYNAMIC_LINKER GLIBC_DYNAMIC_LINKER
#define GNU_USER_DYNAMIC_LINKER32 GLIBC_DYNAMIC_LINKER32
#define GNU_USER_DYNAMIC_LINKER64 GLIBC_DYNAMIC_LINKER64
Index: b/src/gcc/config/kopensolaris-gnu.h
===================================================================
--- a/src/gcc/config/kopensolaris-gnu.h
+++ b/src/gcc/config/kopensolaris-gnu.h
@@ -30,5 +30,15 @@ along with GCC; see the file COPYING3.
......@@ -237,8 +215,6 @@ Index: b/src/gcc/config/kopensolaris-gnu.h
+
#undef GNU_USER_DYNAMIC_LINKER
#define GNU_USER_DYNAMIC_LINKER "/lib/ld.so.1"
Index: b/src/gcc/config/linux-android.h
===================================================================
--- a/src/gcc/config/linux-android.h
+++ b/src/gcc/config/linux-android.h
@@ -25,6 +25,12 @@
......@@ -254,8 +230,6 @@ Index: b/src/gcc/config/linux-android.h
#if ANDROID_DEFAULT
# define NOANDROID "mno-android"
#else
Index: b/src/gcc/config/linux.h
===================================================================
--- a/src/gcc/config/linux.h
+++ b/src/gcc/config/linux.h
@@ -53,6 +53,28 @@ see the files COPYING3 and COPYING.RUNTI
......@@ -287,8 +261,6 @@ Index: b/src/gcc/config/linux.h
/* Determine which dynamic linker to use depending on whether GLIBC or
uClibc or Bionic or musl is the default C library and whether
-muclibc or -mglibc or -mbionic or -mmusl has been passed to change
Index: b/src/gcc/config/mips/linux-common.h
===================================================================
--- a/src/gcc/config/mips/linux-common.h
+++ b/src/gcc/config/mips/linux-common.h
@@ -27,6 +27,15 @@ along with GCC; see the file COPYING3.
......@@ -307,8 +279,6 @@ Index: b/src/gcc/config/mips/linux-common.h
#undef LINK_SPEC
#define LINK_SPEC \
LINUX_OR_ANDROID_LD (GNU_USER_TARGET_LINK_SPEC, \
Index: b/src/gcc/config/netbsd.h
===================================================================
--- a/src/gcc/config/netbsd.h
+++ b/src/gcc/config/netbsd.h
@@ -29,6 +29,14 @@ along with GCC; see the file COPYING3.
......@@ -326,8 +296,6 @@ Index: b/src/gcc/config/netbsd.h
/* CPP_SPEC parts common to all NetBSD targets. */
#define NETBSD_CPP_SPEC \
"%{posix:-D_POSIX_SOURCE} \
Index: b/src/gcc/config/openbsd.h
===================================================================
--- a/src/gcc/config/openbsd.h
+++ b/src/gcc/config/openbsd.h
@@ -84,6 +84,14 @@ along with GCC; see the file COPYING3.
......@@ -345,8 +313,6 @@ Index: b/src/gcc/config/openbsd.h
/* TARGET_OS_CPP_BUILTINS() common to all OpenBSD ELF targets. */
#define OPENBSD_OS_CPP_BUILTINS_ELF() \
do \
Index: b/src/gcc/config/rs6000/aix.h
===================================================================
--- a/src/gcc/config/rs6000/aix.h
+++ b/src/gcc/config/rs6000/aix.h
@@ -164,6 +164,13 @@
......@@ -363,8 +329,6 @@ Index: b/src/gcc/config/rs6000/aix.h
/* Define appropriate architecture macros for preprocessor depending on
target switches. */
Index: b/src/gcc/config/rs6000/linux.h
===================================================================
--- a/src/gcc/config/rs6000/linux.h
+++ b/src/gcc/config/rs6000/linux.h
@@ -57,6 +57,17 @@
......@@ -385,8 +349,6 @@ Index: b/src/gcc/config/rs6000/linux.h
#undef CPP_OS_DEFAULT_SPEC
#define CPP_OS_DEFAULT_SPEC "%(cpp_os_linux)"
Index: b/src/gcc/config/rs6000/linux64.h
===================================================================
--- a/src/gcc/config/rs6000/linux64.h
+++ b/src/gcc/config/rs6000/linux64.h
@@ -391,6 +391,17 @@ extern int dot_symbols;
......
--- a/src/gcc/ada/gnathtml.pl
+++ b/src/gcc/ada/gnathtml.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
#-----------------------------------------------------------------------------
#- --
# DP: Enable decimal float support on kfreebsd-amd64
Index: b/src/gcc/configure.ac
===================================================================
--- a/src/gcc/configure.ac
+++ b/src/gcc/configure.ac
@@ -817,6 +817,7 @@ AC_ARG_ENABLE(__cxa_atexit,
......@@ -12,8 +10,6 @@ Index: b/src/gcc/configure.ac
GCC_AC_ENABLE_DECIMAL_FLOAT([$target])
dfp=`if test $enable_decimal_float != no; then echo 1; else echo 0; fi`
Index: b/src/config/dfp.m4
===================================================================
--- a/src/config/dfp.m4
+++ b/src/config/dfp.m4
@@ -21,7 +21,7 @@ Valid choices are 'yes', 'bid', 'dpd', a
......@@ -25,8 +21,6 @@ Index: b/src/config/dfp.m4
i?86*-*-mingw* | x86_64*-*-mingw* | \
i?86*-*-cygwin* | x86_64*-*-cygwin*)
enable_decimal_float=yes
Index: b/src/libdecnumber/configure.ac
===================================================================
--- a/src/libdecnumber/configure.ac
+++ b/src/libdecnumber/configure.ac
@@ -77,6 +77,7 @@ AC_CANONICAL_TARGET
......@@ -37,11 +31,9 @@ Index: b/src/libdecnumber/configure.ac
AC_MSG_CHECKING([for decimal floating point])
GCC_AC_ENABLE_DECIMAL_FLOAT([$target])
Index: b/src/libgcc/configure.ac
===================================================================
--- a/src/libgcc/configure.ac
+++ b/src/libgcc/configure.ac
@@ -207,6 +207,7 @@ AC_CHECK_HEADERS(inttypes.h stdint.h std
@@ -206,6 +206,7 @@ AC_CHECK_HEADERS(inttypes.h stdint.h std
AC_HEADER_STDC
# Check for decimal float support.
......
# DP: Backport RISC-V support, taken from libffi commit 3840d49aaa
Index: b/src/libffi/Makefile.am
===================================================================
--- a/src/libffi/Makefile.am
+++ b/src/libffi/Makefile.am
@@ -138,6 +138,7 @@
@@ -138,6 +138,7 @@ noinst_HEADERS = \
src/or1k/ffitarget.h \
src/pa/ffitarget.h \
src/powerpc/ffitarget.h src/powerpc/asm.h src/powerpc/ffi_powerpc.h \
......@@ -12,7 +10,7 @@ Index: b/src/libffi/Makefile.am
src/s390/ffitarget.h \
src/sh/ffitarget.h \
src/sh64/ffitarget.h \
@@ -173,6 +174,7 @@
@@ -173,6 +174,7 @@ EXTRA_libffi_la_SOURCES = \
src/powerpc/linux64_closure.S src/powerpc/ppc_closure.S \
src/powerpc/aix.S src/powerpc/darwin.S src/powerpc/aix_closure.S \
src/powerpc/darwin_closure.S src/powerpc/ffi_darwin.c \
......@@ -20,11 +18,9 @@ Index: b/src/libffi/Makefile.am
src/s390/ffi.c src/s390/sysv.S \
src/sh/ffi.c src/sh/sysv.S \
src/sh64/ffi.c src/sh64/sysv.S \
Index: b/src/libffi/Makefile.in
===================================================================
--- a/src/libffi/Makefile.in
+++ b/src/libffi/Makefile.in
@@ -432,6 +432,7 @@
@@ -432,6 +432,7 @@ noinst_HEADERS = \
src/or1k/ffitarget.h \
src/pa/ffitarget.h \
src/powerpc/ffitarget.h src/powerpc/asm.h src/powerpc/ffi_powerpc.h \
......@@ -32,7 +28,7 @@ Index: b/src/libffi/Makefile.in
src/s390/ffitarget.h \
src/sh/ffitarget.h \
src/sh64/ffitarget.h \
@@ -467,6 +468,7 @@
@@ -467,6 +468,7 @@ EXTRA_libffi_la_SOURCES = \
src/powerpc/linux64_closure.S src/powerpc/ppc_closure.S \
src/powerpc/aix.S src/powerpc/darwin.S src/powerpc/aix_closure.S \
src/powerpc/darwin_closure.S src/powerpc/ffi_darwin.c \
......@@ -40,7 +36,7 @@ Index: b/src/libffi/Makefile.in
src/s390/ffi.c src/s390/sysv.S \
src/sh/ffi.c src/sh/sysv.S \
src/sh64/ffi.c src/sh64/sysv.S \
@@ -833,6 +833,16 @@
@@ -831,6 +833,16 @@ src/powerpc/darwin_closure.lo: src/power
src/powerpc/$(DEPDIR)/$(am__dirstamp)
src/powerpc/ffi_darwin.lo: src/powerpc/$(am__dirstamp) \
src/powerpc/$(DEPDIR)/$(am__dirstamp)
......@@ -57,7 +53,7 @@ Index: b/src/libffi/Makefile.in
src/s390/$(am__dirstamp):
@$(MKDIR_P) src/s390
@: > src/s390/$(am__dirstamp)
@@ -1053,6 +1063,10 @@
@@ -1051,6 +1063,10 @@ mostlyclean-compile:
-rm -f src/prep_cif.lo
-rm -f src/raw_api.$(OBJEXT)
-rm -f src/raw_api.lo
......@@ -68,7 +64,7 @@ Index: b/src/libffi/Makefile.in
-rm -f src/s390/ffi.$(OBJEXT)
-rm -f src/s390/ffi.lo
-rm -f src/s390/sysv.$(OBJEXT)
@@ -1169,6 +1183,8 @@
@@ -1167,6 +1183,8 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/linux64_closure.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/ppc_closure.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/sysv.Plo@am__quote@
......@@ -77,7 +73,7 @@ Index: b/src/libffi/Makefile.in
@AMDEP_TRUE@@am__include@ @am__quote@src/s390/$(DEPDIR)/ffi.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@src/s390/$(DEPDIR)/sysv.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@src/sh/$(DEPDIR)/ffi.Plo@am__quote@
@@ -1270,6 +1286,7 @@
@@ -1268,6 +1286,7 @@ clean-libtool:
-rm -rf src/or1k/.libs src/or1k/_libs
-rm -rf src/pa/.libs src/pa/_libs
-rm -rf src/powerpc/.libs src/powerpc/_libs
......@@ -85,7 +81,7 @@ Index: b/src/libffi/Makefile.in
-rm -rf src/s390/.libs src/s390/_libs
-rm -rf src/sh/.libs src/sh/_libs
-rm -rf src/sh64/.libs src/sh64/_libs
@@ -1674,6 +1691,8 @@
@@ -1672,6 +1691,8 @@ distclean-generic:
-rm -f src/pa/$(am__dirstamp)
-rm -f src/powerpc/$(DEPDIR)/$(am__dirstamp)
-rm -f src/powerpc/$(am__dirstamp)
......@@ -94,7 +90,7 @@ Index: b/src/libffi/Makefile.in
-rm -f src/s390/$(DEPDIR)/$(am__dirstamp)
-rm -f src/s390/$(am__dirstamp)
-rm -f src/sh/$(DEPDIR)/$(am__dirstamp)
@@ -1703,7 +1722,7 @@
@@ -1701,7 +1722,7 @@ clean-am: clean-aminfo clean-generic cle
distclean: distclean-multi distclean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
......@@ -103,7 +99,7 @@ Index: b/src/libffi/Makefile.in
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-hdr distclean-libtool distclean-tags
@@ -1842,7 +1861,7 @@
@@ -1840,7 +1861,7 @@ installcheck-am:
maintainer-clean: maintainer-clean-multi maintainer-clean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf $(top_srcdir)/autom4te.cache
......@@ -112,11 +108,9 @@ Index: b/src/libffi/Makefile.in
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-aminfo \
maintainer-clean-generic maintainer-clean-vti
Index: b/src/libffi/configure.host
===================================================================
--- a/src/libffi/configure.host
+++ b/src/libffi/configure.host
@@ -195,6 +195,11 @@
@@ -195,6 +195,11 @@ case "${host}" in
TARGET=POWERPC; TARGETDIR=powerpc
;;
......@@ -128,8 +122,6 @@ Index: b/src/libffi/configure.host
s390-*-* | s390x-*-*)
TARGET=S390; TARGETDIR=s390
SOURCES="ffi.c sysv.S"
Index: b/src/libffi/src/riscv/ffi.c
===================================================================
--- /dev/null
+++ b/src/libffi/src/riscv/ffi.c
@@ -0,0 +1,445 @@
......@@ -578,8 +570,6 @@ Index: b/src/libffi/src/riscv/ffi.c
+ marshal(&cb, cif->rtype, 0, rvalue);
+ }
+}
Index: b/src/libffi/src/riscv/ffitarget.h
===================================================================
--- /dev/null
+++ b/src/libffi/src/riscv/ffitarget.h
@@ -0,0 +1,68 @@
......@@ -651,8 +641,6 @@ Index: b/src/libffi/src/riscv/ffitarget.h
+
+#endif
+
Index: b/src/libffi/src/riscv/sysv.S
===================================================================
--- /dev/null
+++ b/src/libffi/src/riscv/sysv.S
@@ -0,0 +1,214 @@
......@@ -870,4 +858,3 @@ Index: b/src/libffi/src/riscv/sysv.S
+ ret
+ .cfi_endproc
+ .size ffi_closure_asm, .-ffi_closure_asm
# DP: libgo: Overwrite the setcontext_clobbers_tls check on mips*
Index: b/src/libgo/configure.ac
===================================================================
--- a/src/libgo/configure.ac
+++ b/src/libgo/configure.ac
@@ -838,6 +838,14 @@ main ()
@@ -820,6 +820,14 @@ main ()
CFLAGS="$CFLAGS_hold"
LIBS="$LIBS_hold"
])
......
# DP: Fix GCC_LINUX_FUTEX to work with C99 compilers
config/
2019-09-06 Florian Weimer <fweimer@redhat.com>
* futex.m4 (GCC_LINUX_FUTEX): Include <unistd.h> for the syscall
function.
libitm/ libgomp/ libstdc++-v3/
2019-09-06 Florian Weimer <fweimer@redhat.com>
* configure: Regenerate.
--- a/src/config/futex.m4
+++ b/src/config/futex.m4
@@ -22,6 +22,7 @@ case "$target" in
AC_LINK_IFELSE(
[AC_LANG_PROGRAM(
[#include <sys/syscall.h>
+ #include <unistd.h>
int lk;],
[syscall (SYS_gettid); syscall (SYS_futex, &lk, 0, 0, 0);])],
[save_LIBS="$LIBS"
@@ -48,6 +49,7 @@ If so, please configure with --disable-l
AC_LINK_IFELSE(
[AC_LANG_PROGRAM(
[#include <sys/syscall.h>
+ #include <unistd.h>
int lk;],
[syscall (SYS_gettid); syscall (SYS_futex, &lk, 0, 0, 0);])],[],
[AC_MSG_ERROR([SYS_gettid and SYS_futex required for --enable-linux-futex])])
--- a/src/libitm/configure
+++ b/src/libitm/configure
@@ -16252,6 +16252,7 @@ case "$target" in
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/syscall.h>
+#include <unistd.h>
int lk;
int
main ()
@@ -16304,6 +16305,7 @@ rm -f core conftest.err conftest.$ac_obj
cat confdefs.h - <<_ACEOF >conftest.$ac_ext