diff --git build/config/compiler/BUILD.gn build/config/compiler/BUILD.gn
index 2673c6a79889..ca5726966ac0 100644
--- build/config/compiler/BUILD.gn
+++ build/config/compiler/BUILD.gn
@@ -443,7 +443,7 @@ config("compiler") {
     # chromeos binutils has been patched with the fix, so always use icf there.
     # The bug only affects x86 and x64, so we can still use ICF when targeting
     # other architectures.
-    if ((!is_android && linux_use_bundled_binutils) || is_chromeos ||
+    if ((!is_android && linux_use_bundled_binutils && current_cpu != "x86") || is_chromeos ||
         !(current_cpu == "x86" || current_cpu == "x64")) {
       ldflags += [ "-Wl,--icf=all" ]
     }
diff --git chrome/browser/ui/libgtkui/gtk_util.cc chrome/browser/ui/libgtkui/gtk_util.cc
index fc6ffb9d..f6c22e5 100644
--- chrome/browser/ui/libgtkui/gtk_util.cc
+++ chrome/browser/ui/libgtkui/gtk_util.cc
@@ -56,6 +56,7 @@ void CommonInitFromCommandLine(const base::CommandLine& command_line,
   }
 }
 
+#if GTK_MAJOR_VERSION > 2
 using GtkSetState = void (*)(GtkWidgetPath*, gint, GtkStateFlags);
 PROTECTED_MEMORY_SECTION base::ProtectedMemory<GtkSetState>
     _gtk_widget_path_iter_set_state;
@@ -63,6 +64,7 @@ PROTECTED_MEMORY_SECTION base::ProtectedMemory<GtkSetState>
 using GtkSetObjectName = void (*)(GtkWidgetPath*, gint, const char*);
 PROTECTED_MEMORY_SECTION base::ProtectedMemory<GtkSetObjectName>
     _gtk_widget_path_iter_set_object_name;
+#endif
 
 }  // namespace
 
@@ -401,10 +403,12 @@ ScopedStyleContext AppendCssNodeToStyleContext(GtkStyleContext* context,
           NOTREACHED();
       }
     } else {
+#if GTK_MAJOR_VERSION > 2
       static base::ProtectedMemory<GtkSetObjectName>::Initializer init(
           &_gtk_widget_path_iter_set_object_name,
           reinterpret_cast<GtkSetObjectName>(dlsym(
               GetGtkSharedLibrary(), "gtk_widget_path_iter_set_object_name")));
+#endif
       switch (part_type) {
         case CSS_NAME: {
           if (GtkVersionCheck(3, 20)) {
@@ -449,6 +453,7 @@ ScopedStyleContext AppendCssNodeToStyleContext(GtkStyleContext* context,
   // widgets specially if they want to.
   gtk_widget_path_iter_add_class(path, -1, "chromium");
 
+#if GTK_MAJOR_VERSION > 2
   if (GtkVersionCheck(3, 14)) {
     static base::ProtectedMemory<GtkSetState>::Initializer init(
         &_gtk_widget_path_iter_set_state,
@@ -457,6 +462,7 @@ ScopedStyleContext AppendCssNodeToStyleContext(GtkStyleContext* context,
     DCHECK(*_gtk_widget_path_iter_set_state);
     base::UnsanitizedCfiCall(_gtk_widget_path_iter_set_state)(path, -1, state);
   }
+#endif
 
   ScopedStyleContext child_context(gtk_style_context_new());
   gtk_style_context_set_path(child_context, path);