Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(784)

Unified Diff: third_party/binutils/ehframe-race.patch

Issue 1374563002: Revert of Upgrading binutils to 2.25 for -ggnu-pubnames (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/binutils/build-all.sh ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/binutils/ehframe-race.patch
diff --git a/third_party/binutils/ehframe-race.patch b/third_party/binutils/ehframe-race.patch
new file mode 100644
index 0000000000000000000000000000000000000000..ab0d01eaaf671e8d852aa95d6266ac8f0e56596a
--- /dev/null
+++ b/third_party/binutils/ehframe-race.patch
@@ -0,0 +1,96 @@
+diff --git a/gold/gold.cc b/gold/gold.cc
+index 4833aec..bdfb33d 100644
+--- a/gold/gold.cc
++++ b/gold/gold.cc
+@@ -808,6 +808,8 @@ queue_final_tasks(const General_options& options,
+ if (!any_postprocessing_sections)
+ {
+ input_sections_blocker = new Task_token(true);
++ // Write_symbols_task, Relocate_tasks.
++ input_sections_blocker->add_blocker();
+ input_sections_blocker->add_blockers(input_objects->number_of_relobjs());
+ }
+
+@@ -836,6 +838,7 @@ queue_final_tasks(const General_options& options,
+
+ // Queue a task to write out the output sections.
+ workqueue->queue(new Write_sections_task(layout, of, output_sections_blocker,
++ input_sections_blocker,
+ final_blocker));
+
+ // Queue a task to write out everything else.
+diff --git a/gold/layout.cc b/gold/layout.cc
+index 82db775..ef0a879 100644
+--- a/gold/layout.cc
++++ b/gold/layout.cc
+@@ -5532,6 +5532,8 @@ void
+ Write_sections_task::locks(Task_locker* tl)
+ {
+ tl->add(this, this->output_sections_blocker_);
++ if (this->input_sections_blocker_ != NULL)
++ tl->add(this, this->input_sections_blocker_);
+ tl->add(this, this->final_blocker_);
+ }
+
+diff --git a/gold/layout.h b/gold/layout.h
+index 7c0113c..032f5f3 100644
+--- a/gold/layout.h
++++ b/gold/layout.h
+@@ -1454,9 +1454,11 @@ class Write_sections_task : public Task
+ public:
+ Write_sections_task(const Layout* layout, Output_file* of,
+ Task_token* output_sections_blocker,
++ Task_token* input_sections_blocker,
+ Task_token* final_blocker)
+ : layout_(layout), of_(of),
+ output_sections_blocker_(output_sections_blocker),
++ input_sections_blocker_(input_sections_blocker),
+ final_blocker_(final_blocker)
+ { }
+
+@@ -1481,6 +1483,7 @@ class Write_sections_task : public Task
+ const Layout* layout_;
+ Output_file* of_;
+ Task_token* output_sections_blocker_;
++ Task_token* input_sections_blocker_;
+ Task_token* final_blocker_;
+ };
+
+diff --git a/gold/testsuite/Makefile.am b/gold/testsuite/Makefile.am
+index dd06d5f..35cd013 100644
+--- a/gold/testsuite/Makefile.am
++++ b/gold/testsuite/Makefile.am
+@@ -2380,10 +2380,9 @@ endif DEFAULT_TARGET_X86_64
+ if DEFAULT_TARGET_X86_64
+ check_PROGRAMS += exception_x86_64_bnd_test
+ exception_x86_64_bnd_test_SOURCES = exception_test_main.cc
+-exception_x86_64_bnd_test_DEPENDENCIES = exception_x86_64_bnd_1.o \
+- exception_x86_64_bnd_2.o
++exception_x86_64_bnd_test_DEPENDENCIES = gcctestdir/ld exception_x86_64_bnd_1.o exception_x86_64_bnd_2.o
+ exception_x86_64_bnd_test_LDFLAGS = $(exception_test_LDFLAGS)
+-exception_x86_64_bnd_test_LDADD = $(exception_x86_64_bnd_test_DEPENDENCIES)
++exception_x86_64_bnd_test_LDADD = exception_x86_64_bnd_1.o exception_x86_64_bnd_2.o
+ exception_x86_64_bnd_1.o: exception_test_1.cc gcctestdir/as
+ $(CXXCOMPILE) -c -fpic -Bgcctestdir/ -Wa,-madd-bnd-prefix -o $@ $<
+ exception_x86_64_bnd_2.o: exception_test_2.cc gcctestdir/as
+diff --git a/gold/testsuite/Makefile.in b/gold/testsuite/Makefile.in
+index fed610f..8fbb644 100644
+--- a/gold/testsuite/Makefile.in
++++ b/gold/testsuite/Makefile.in
+@@ -2732,11 +2732,9 @@ LDADD = libgoldtest.a ../libgold.a ../../libiberty/libiberty.a $(LIBINTL) \
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@ehdr_start_test_5_LDFLAGS = -Bgcctestdir/
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@ehdr_start_test_5_LDADD =
+ @DEFAULT_TARGET_X86_64_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@exception_x86_64_bnd_test_SOURCES = exception_test_main.cc
+-@DEFAULT_TARGET_X86_64_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@exception_x86_64_bnd_test_DEPENDENCIES = exception_x86_64_bnd_1.o \
+-@DEFAULT_TARGET_X86_64_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@ exception_x86_64_bnd_2.o
+-
++@DEFAULT_TARGET_X86_64_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@exception_x86_64_bnd_test_DEPENDENCIES = gcctestdir/ld exception_x86_64_bnd_1.o exception_x86_64_bnd_2.o
+ @DEFAULT_TARGET_X86_64_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@exception_x86_64_bnd_test_LDFLAGS = $(exception_test_LDFLAGS)
+-@DEFAULT_TARGET_X86_64_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@exception_x86_64_bnd_test_LDADD = $(exception_x86_64_bnd_test_DEPENDENCIES)
++@DEFAULT_TARGET_X86_64_TRUE@@GCC_TRUE@@NATIVE_LINKER_TRUE@exception_x86_64_bnd_test_LDADD = exception_x86_64_bnd_1.o exception_x86_64_bnd_2.o
+ @DEFAULT_TARGET_I386_TRUE@@NATIVE_OR_CROSS_LINKER_TRUE@SPLIT_DEFSYMS = --defsym __morestack=0x100 --defsym __morestack_non_split=0x200
+ @DEFAULT_TARGET_X86_64_TRUE@@NATIVE_OR_CROSS_LINKER_TRUE@SPLIT_DEFSYMS = --defsym __morestack=0x100 --defsym __morestack_non_split=0x200
+ all: $(BUILT_SOURCES)
+--
+1.7.1
+
« no previous file with comments | « third_party/binutils/build-all.sh ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698