diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 39f3e04831c8..3a060e8b2c03 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,24 @@
+2010-12-02  Joseph Myers  <joseph@codesourcery.com>
+
+	* config/alpha/freebsd.h (LINK_SPEC): Don't handle -Wl,.
+	* config/bfin/bfin.h (ASM_SPEC): Don't handle -Wa,.
+	* config/frv/frv.h (ASM_SPEC): Don't handle -Wa,.
+	* config/lm32/uclinux-elf.h (LINK_SPEC): Don't handle -Wl,.
+	* config/microblaze/microblaze.h (LINK_SPEC): Don't handle -Wl,.
+	* config/mn10300/linux.h (ASM_SPEC): Don't handle -Wa,.
+	* config/pa/pa-linux.h (ASM_SPEC): Don't handle -Wa,.
+	* config/rs6000/freebsd.h (SVR4_ASM_SPEC): Don't handle -Wa,.
+	* config/rs6000/linux64.h (ASM_SPEC_COMMON): Don't handle -Wa,.
+	* config/rs6000/sysv4.h (LINK_SPEC): Don't handle -Wl,.
+	* config/rs6000/vxworks.h (ASM_SPEC): Don't handle -Wa,.
+	* config/sol2.h (ASM_SPEC): Don't handle -Wa,.
+	* config/sparc/linux.h (ASM_SPEC): Don't handle -Wa,.
+	* config/sparc/linux64.h (ASM_SPEC): Don't handle -Wa,.
+	* config/sparc/sp-elf.h (ASM_SPEC): Don't handle -Wa,.
+	* config/sparc/sysv4.h (ASM_SPEC): Don't handle -Wa,.
+	* config/svr4.h (SVR4_ASM_SPEC): Don't handle -Wa,.
+	* config/vxworks.h (VXWORKS_LINK_SPEC): Don't handle -Wl,.
+
 2010-12-02  Paul Koning  <ni1d@arrl.net>
 
 	* config/pdp11/pdp11.c (output_jump): Map unsigned to signed
diff --git a/gcc/config/alpha/freebsd.h b/gcc/config/alpha/freebsd.h
index d100bba78601..972774f8165f 100644
--- a/gcc/config/alpha/freebsd.h
+++ b/gcc/config/alpha/freebsd.h
@@ -32,7 +32,6 @@ along with GCC; see the file COPYING3.  If not see
 
 #define LINK_SPEC "%{G*} %{relax:-relax}				\
   %{p:%nconsider using '-pg' instead of '-p' with gprof(1)}		\
-  %{Wl,*:%*}								\
   %{assert*} %{R*} %{rpath*} %{defsym*}					\
   %{shared:-Bshareable %{h*} %{soname*}}				\
   %{!shared:								\
diff --git a/gcc/config/bfin/bfin.h b/gcc/config/bfin/bfin.h
index 88d15fea63f8..c409b2654260 100644
--- a/gcc/config/bfin/bfin.h
+++ b/gcc/config/bfin/bfin.h
@@ -248,7 +248,7 @@ extern unsigned int bfin_workarounds;
    Defined in svr4.h.  */
 #undef  ASM_SPEC
 #define ASM_SPEC "\
-%{v} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*} \
+%{v} %{n} %{T} %{Ym,*} %{Yd,*} \
     %{mno-fdpic:-mnopic} %{mfdpic}"
 
 #define LINK_SPEC "\
diff --git a/gcc/config/frv/frv.h b/gcc/config/frv/frv.h
index f3fe567be3ec..b2bc2622c863 100644
--- a/gcc/config/frv/frv.h
+++ b/gcc/config/frv/frv.h
@@ -71,7 +71,7 @@
    Defined in svr4.h.  */
 #undef  ASM_SPEC
 #define ASM_SPEC "\
-%{G*} %{v} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*} \
+%{G*} %{v} %{n} %{T} %{Ym,*} %{Yd,*} \
 %{mtomcat-stats} \
 %{!mno-eflags: \
     %{mcpu=*} \
diff --git a/gcc/config/lm32/uclinux-elf.h b/gcc/config/lm32/uclinux-elf.h
index ce9719a3be61..b060ac759189 100644
--- a/gcc/config/lm32/uclinux-elf.h
+++ b/gcc/config/lm32/uclinux-elf.h
@@ -1,6 +1,6 @@
 /* Definitions for LM32 running Linux-based GNU systems using ELF
    Copyright (C) 1993, 1994, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-   2009 Free Software Foundation, Inc.
+   2009, 2010 Free Software Foundation, Inc.
    Contributed by Philip Blundell <philb@gnu.org>
 
    This file is part of GCC.
@@ -68,7 +68,7 @@
 
 #undef  LINK_SPEC
 #define LINK_SPEC "%{h*} %{version:-v} \
-   %{b} %{Wl,*:%*} \
+   %{b} \
    %{static:-Bstatic} \
    %{shared:-shared} \
    %{symbolic:-Bsymbolic} \
diff --git a/gcc/config/microblaze/microblaze.h b/gcc/config/microblaze/microblaze.h
index 7290f75187d5..a86ba8ce52cd 100644
--- a/gcc/config/microblaze/microblaze.h
+++ b/gcc/config/microblaze/microblaze.h
@@ -87,7 +87,7 @@ extern enum pipeline_type microblaze_pipe;
   %{Zxl-mode-xmdstub:-defsym _TEXT_START_ADDR=0x800} \
   %{mxl-mode-xmdstub:-defsym _TEXT_START_ADDR=0x800} \
   %{mxl-gp-opt:%{G*}} %{!mxl-gp-opt: -G 0} \
-  %{!Wl,-T*: %{!T*: -dT xilinx.ld%s}}"
+  %{!T*: -dT xilinx.ld%s}"
 
 /* Specs for the compiler proper  */
 
diff --git a/gcc/config/mn10300/linux.h b/gcc/config/mn10300/linux.h
index ac9f8c5c0121..9992877e2eff 100644
--- a/gcc/config/mn10300/linux.h
+++ b/gcc/config/mn10300/linux.h
@@ -1,6 +1,6 @@
 /* Definitions of taret machine for GNU compiler.
    Matsushita AM33/2.0
-   Copyright 2001, 2002, 2005, 2006, 2007 Free Software Foundation, Inc.
+   Copyright 2001, 2002, 2005, 2006, 2007, 2010 Free Software Foundation, Inc.
    Contributed by Alexandre Oliva <aoliva@redhat.com>
 
    This file is part of GCC.
@@ -30,7 +30,7 @@
   %{pthread:-D_REENTRANT -D_PTHREADS}"
 
 #undef  ASM_SPEC
-#define ASM_SPEC "%{Wa,*:%*}"
+#define ASM_SPEC ""
 
 #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
 
diff --git a/gcc/config/pa/pa-linux.h b/gcc/config/pa/pa-linux.h
index cd467900d228..fc1ed4be406c 100644
--- a/gcc/config/pa/pa-linux.h
+++ b/gcc/config/pa/pa-linux.h
@@ -1,5 +1,5 @@
 /* Definitions for PA_RISC with ELF format
-   Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009
+   Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
    Free Software Foundation, Inc.
 
 This file is part of GCC.
@@ -33,7 +33,7 @@ along with GCC; see the file COPYING3.  If not see
 
 #undef ASM_SPEC
 #define ASM_SPEC \
-  "%{v:-V} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*}"
+  "%{v:-V} %{n} %{T} %{Ym,*} %{Yd,*}"
 
 /* Define this for shared library support because it isn't in the main
    linux.h file.  */
diff --git a/gcc/config/rs6000/freebsd.h b/gcc/config/rs6000/freebsd.h
index bc2a10bb7a3a..958d818e4b2f 100644
--- a/gcc/config/rs6000/freebsd.h
+++ b/gcc/config/rs6000/freebsd.h
@@ -1,5 +1,5 @@
 /* Definitions for PowerPC running FreeBSD using the ELF format
-   Copyright (C) 2001, 2003, 2007, 2009 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2003, 2007, 2009, 2010 Free Software Foundation, Inc.
    Contributed by David E. O'Brien <obrien@FreeBSD.org> and BSDi.
 
    This file is part of GCC.
@@ -71,4 +71,4 @@
 #define ASM_APP_OFF "#NO_APP\n"
 /* Define SVR4_ASM_SPEC, we use GAS by default. See svr4.h for details.  */
 #define SVR4_ASM_SPEC \
-  "%{v:-V} %{Wa,*:%*}"
+  "%{v:-V}"
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
index 0bc774a1f0cd..c39b7351e70f 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
@@ -207,7 +207,7 @@ extern int dot_symbols;
 
 #define ASM_SPEC_COMMON "%(asm_cpu) \
 %{,assembler|,assembler-with-cpp: %{mregnames} %{mno-regnames}} \
-%{v:-V} %{Qy:} %{!Qn:-Qy} %{Wa,*:%*} \
+%{v:-V} %{Qy:} %{!Qn:-Qy} \
 %{mlittle} %{mlittle-endian} %{mbig} %{mbig-endian}"
 
 #undef	SUBSUBTARGET_EXTRA_SPECS
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index ae27682a6827..b5c25f0d5838 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -644,7 +644,7 @@ SVR4_ASM_SPEC \
 %{YP,*} %{R*} \
 %{Qy:} %{!Qn:-Qy} \
 %(link_shlib) \
-%{!Wl,-T*: %{!T*: %(link_start) }} \
+%{!T*: %(link_start) } \
 %(link_target) \
 %(link_os)"
 
diff --git a/gcc/config/rs6000/vxworks.h b/gcc/config/rs6000/vxworks.h
index 007d87088186..bbe39d2f80fe 100644
--- a/gcc/config/rs6000/vxworks.h
+++ b/gcc/config/rs6000/vxworks.h
@@ -87,7 +87,7 @@ VXWORKS_ADDITIONAL_CPP_SPEC
 #define ASM_SPEC \
 "%(asm_cpu) \
  %{,assembler|,assembler-with-cpp: %{mregnames} %{mno-regnames}} \
- %{v:-v} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*} \
+ %{v:-v} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} \
  %{mrelocatable} %{mrelocatable-lib} %{fpic:-K PIC} %{fPIC:-K PIC} -mbig"
 
 #undef  LIB_SPEC
diff --git a/gcc/config/sol2.h b/gcc/config/sol2.h
index 40db4b36418c..8c29fab9ef6b 100644
--- a/gcc/config/sol2.h
+++ b/gcc/config/sol2.h
@@ -115,7 +115,7 @@ along with GCC; see the file COPYING3.  If not see
    It's safe to pass -s always, even if -g is not used.  */
 #undef ASM_SPEC
 #define ASM_SPEC "\
-%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Wa,*:%*} -s \
+%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} -s \
 %{fpic|fpie|fPIC|fPIE:-K PIC} \
 %(asm_cpu) \
 "
diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h
index 1272d2aba7d4..2b0bd73ff05b 100644
--- a/gcc/config/sparc/linux.h
+++ b/gcc/config/sparc/linux.h
@@ -1,6 +1,6 @@
 /* Definitions for SPARC running Linux-based GNU systems with ELF.
    Copyright (C) 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
-   2007, 2008, 2009 Free Software Foundation, Inc.
+   2007, 2008, 2009, 2010 Free Software Foundation, Inc.
    Contributed by Eddie C. Dost (ecd@skynet.be)
 
 This file is part of GCC.
@@ -105,7 +105,6 @@ along with GCC; see the file COPYING3.  If not see
 %{n} \
 %{T} \
 %{Ym,*} \
-%{Wa,*:%*} \
 -s \
 %{fpic|fPIC|fpie|fPIE:-K PIC} \
 %{!.c:%{findirect-dispatch:-K PIC}} \
diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h
index d8a242758dd4..7f413c7feb04 100644
--- a/gcc/config/sparc/linux64.h
+++ b/gcc/config/sparc/linux64.h
@@ -1,6 +1,6 @@
 /* Definitions for 64-bit SPARC running Linux-based GNU systems with ELF.
    Copyright 1996, 1997, 1998, 2000, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
-   2009 Free Software Foundation, Inc.
+   2009, 2010 Free Software Foundation, Inc.
    Contributed by David S. Miller (davem@caip.rutgers.edu)
 
 This file is part of GCC.
@@ -234,7 +234,6 @@ along with GCC; see the file COPYING3.  If not see
 %{n} \
 %{T} \
 %{Ym,*} \
-%{Wa,*:%*} \
 -s \
 %{fpic|fPIC|fpie|fPIE:-K PIC} \
 %{!.c:%{findirect-dispatch:-K PIC}} \
diff --git a/gcc/config/sparc/sp-elf.h b/gcc/config/sparc/sp-elf.h
index 8f0e892971a2..99fd507b7309 100644
--- a/gcc/config/sparc/sp-elf.h
+++ b/gcc/config/sparc/sp-elf.h
@@ -28,7 +28,7 @@ along with GCC; see the file COPYING3.  If not see
    It's safe to pass -s always, even if -g is not used.  */
 #undef ASM_SPEC
 #define ASM_SPEC \
-  "%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Wa,*:%*} -s \
+  "%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} -s \
    %{fpic|fpie|fPIC|fPIE:-K PIC} %(asm_cpu)"
 
 /* Use the default.  */
diff --git a/gcc/config/sparc/sysv4.h b/gcc/config/sparc/sysv4.h
index 542f7c1b0550..99dc3f8489c1 100644
--- a/gcc/config/sparc/sysv4.h
+++ b/gcc/config/sparc/sysv4.h
@@ -50,7 +50,7 @@ along with GCC; see the file COPYING3.  If not see
 /* Pass -K to the assembler when PIC.  */
 #undef ASM_SPEC
 #define ASM_SPEC \
-  "%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*} \
+  "%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} \
    %{fpic|fPIC|fpie|fPIE:-K PIC} %(asm_cpu)"
 
 /* Define the names of various pseudo-op used by the SPARC/svr4 assembler.
diff --git a/gcc/config/svr4.h b/gcc/config/svr4.h
index f45706b4f761..90967a1873ea 100644
--- a/gcc/config/svr4.h
+++ b/gcc/config/svr4.h
@@ -63,10 +63,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 
 #ifdef USE_GAS
 #define SVR4_ASM_SPEC \
-  "%{v:-V} %{Wa,*:%*}"
+  "%{v:-V}"
 #else
 #define SVR4_ASM_SPEC \
-  "%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*}"
+  "%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*}"
 #endif
 
 #undef  ASM_SPEC
diff --git a/gcc/config/vxworks.h b/gcc/config/vxworks.h
index 142fd91e06fd..308e6b22e928 100644
--- a/gcc/config/vxworks.h
+++ b/gcc/config/vxworks.h
@@ -60,7 +60,7 @@ along with GCC; see the file COPYING3.  If not see
 "%{!mrtp:-r}						\
  %{!shared:						\
    %{mrtp:-q %{h*}					\
-          %{R*} %{!Wl,-T*: %{!T*: %(link_start) }}	\
+          %{R*} %{!T*: %(link_start) }			\
           %(link_target) %(link_os)}}			\
  %{v:-v}						\
  %{shared:-shared}					\