aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUros Bizjak <uros@gcc.gnu.org>2010-03-26 19:22:37 +0100
committerUros Bizjak <uros@gcc.gnu.org>2010-03-26 19:22:37 +0100
commitfb04bb842fb8e5eb49f8066953da8e9064c24453 (patch)
treebf7e4f3146a98fe97ef7977f199855fa2a208fcb
parent7cbd785e801c9f9b7e854e5a5680103fed5f5e6e (diff)
downloadgcc-fb04bb842fb8e5eb49f8066953da8e9064c24453.zip
gcc-fb04bb842fb8e5eb49f8066953da8e9064c24453.tar.gz
gcc-fb04bb842fb8e5eb49f8066953da8e9064c24453.tar.bz2
re PR target/43524 (ICE: in ix86_expand_prologue, at config/i386/i386.c:8636 with -mstack-arg-probe on x86_64-linux)
PR target/43524 * config/i386/i386.c (ix86_expand_prologue) [TARGET_STACK_PROBE]: Remove invalid assert and wrong comment. testsuite/ChangeLog: PR target/43524 * gcc.target/i386/pr43524.c: New test. From-SVN: r157757
-rw-r--r--gcc/ChangeLog51
-rw-r--r--gcc/config/i386/i386.c3
-rw-r--r--gcc/testsuite/ChangeLog39
-rw-r--r--gcc/testsuite/gcc.target/i386/pr43524.c9
4 files changed, 55 insertions, 47 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0e8d0b9..ffd5150 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2010-03-26 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/43524
+ * config/i386/i386.c (ix86_expand_prologue) [TARGET_STACK_PROBE]:
+ Remove invalid assert and wrong comment.
+
2010-03-26 Jakub Jelinek <jakub@redhat.com>
PR debug/43516
@@ -34,8 +40,7 @@
2010-03-24 Michael Meissner <meissner@linux.vnet.ibm.com>
- * config/rs6000/constraints.md: Update copyright year for my
- changes.
+ * config/rs6000/constraints.md: Update copyright year for my changes.
PR target/43484
* config/rs6000/rs6000.c (rs6000_split_multireg_move): If r0 is
@@ -95,8 +100,7 @@
(output_addr_const_extra): Likewise.
(output_pic_addr_const): Lowercase @TPOFF.
(output_addr_const_extra): Likewise.
- * config/i386/i386.md (*tls_global_dynamic_32_gnu): Lowercase
- @TLSGD.
+ * config/i386/i386.md (*tls_global_dynamic_32_gnu): Lowercase @TLSGD.
(*tls_global_dynamic_64): Likewise.
(*tls_local_dynamic_base_32_gnu): Lowercase @TLSLDM.
(*tls_local_dynamic_base_64): Lowercase @TLSLD.
@@ -106,8 +110,7 @@
* config/i386/sol2-gas.h (TLS_COMMON_ASM_OP): Undef.
PR target/38118
- * config.gcc (sparc*-*-solaris2*) [$gas=yes]: Add usegas.h to
- tm_file.
+ * config.gcc (sparc*-*-solaris2*) [$gas=yes]: Add usegas.h to tm_file.
* config/sparc/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Move ...
* config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): ... here.
* config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Redefine.
@@ -153,12 +156,12 @@
PR target/43348
* ia64.md (call_nogp, call_value_nogp, sibcall_nogp, call_gp,
- call_value_gp,sibcall_gp): Use 's' constraint not 'i'.
+ call_value_gp, sibcall_gp): Use 's' constraint not 'i'.
2010-03-22 H.J. Lu <hongjiu.lu@intel.com>
- * config/i386/i386.c (ix86_target_string): Fix a typo in comments.
- Add -mfma.
+ * config/i386/i386.c (ix86_target_string): Add -mfma.
+ Fix a typo in comment.
2010-03-22 Mike Stump <mikestump@comcast.net>
@@ -175,17 +178,15 @@
* doc/configfiles.texi (Configuration Files): Removed
fixinc/Makefile*, intl/Makefile.*.
- * doc/makefile.texi: Fixed markup.
- Abstract from version control system used.
+ * doc/makefile.texi: Fixed markup. Abstract from version
+ control system used.
(Makefile): Removed obsolete gcc/java/parse.y example.
* doc/sourcebuild.texi: Likewise.
(Top Level): Added config, gnattools, libdecnumber, libgcc,
- libgomp, libssp.
- Removed fastjar.
+ libgomp, libssp. Removed fastjar.
(Miscellaneous Docs): Clarify location.
Added COPYING3, COPYING3.LIB.
- (Front End Directory): Moved Make-lang.in entry to new
- subsubsection.
+ (Front End Directory): Moved Make-lang.in entry to new subsubsection.
2010-03-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
@@ -272,8 +273,8 @@
2010-03-19 Andrew Pinski <andrew_pinski@caviumnetworks.com>
PR c/43211
- * c-decl.c (grokparms): Set arg_types to NULL_TREE if there was an
- error.
+ * c-decl.c (grokparms): Set arg_types to NULL_TREE if there was
+ an error.
2010-03-19 Bernd Schmidt <bernd.schmidt@codesourcery.com>
@@ -372,8 +373,7 @@
PR bootstrap/43403
* var-tracking.c (vt_init_cfa_base): Do nothing if
- cfa_base_rtx would be hard_frame_pointer_rtx or non-fixed
- register.
+ cfa_base_rtx would be hard_frame_pointer_rtx or non-fixed register.
2010-03-18 Alexandre Oliva <aoliva@redhat.com>
@@ -399,8 +399,7 @@
* cgraph.h (cgraph_redirect_edge_call_stmt_to_callee): Declare.
* cgraphunit.c (cgraph_materialize_all_clones): Update calls in
all non-clones. Moved call redirection...
- (cgraph_redirect_edge_call_stmt_to_callee): ...to this new
- function.
+ (cgraph_redirect_edge_call_stmt_to_callee): ...to this new function.
(cgraph_materialize_all_clones): Dispose of all
combined_args_to_skip bitmaps.
(verify_cgraph_node): Do not check for edges pointing to wrong
@@ -471,8 +470,7 @@
appending a use to an empty chain.
(build_def_use): Remove previous changes that convert OP_INOUT to
OP_OUT operands; instead detect the case where an OP_INOUT operand
- uses a previously untracked register and create an empty chain for
- it.
+ uses a previously untracked register and create an empty chain for it.
2010-03-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
@@ -510,9 +508,8 @@
2010-03-16 Richard Guenther <rguenther@suse.de>
PR middle-end/43379
- * tree-cfg.c (gimple_merge_blocks): When propagating virtual
- PHI operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI
- properly.
+ * tree-cfg.c (gimple_merge_blocks): When propagating virtual PHI
+ operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI properly.
2010-03-16 Aldy Hernandez <aldyh@redhat.com>
Alexandre Oliva <aoliva@redhat.com>
@@ -530,7 +527,7 @@
cfa_base_preserved_val): New static variables.
(preserve_only_constants): New function.
(cselib_reset_table): If cfa_base_preserved_val is non-NULL, don't
- clear its REG_VALUES. If cselib_preserve_constants, don't
+ clear its REG_VALUES. If cselib_preserve_constants, don't
empty the whole hash table, but preserve there VALUEs with constants,
cfa_base_preserved_val and cfa_base_preserved_val plus constant.
(cselib_preserve_cfa_base_value): New function.
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 35b4c49..985a3e5 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -8628,13 +8628,10 @@ ix86_expand_prologue (void)
ix86_cfa_state->reg == stack_pointer_rtx);
else
{
- /* Only valid for Win32. */
rtx eax = gen_rtx_REG (Pmode, AX_REG);
bool eax_live;
rtx t;
- gcc_assert (!TARGET_64BIT || cfun->machine->call_abi == MS_ABI);
-
if (cfun->machine->call_abi == MS_ABI)
eax_live = false;
else
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index d124d4a..c61e37c 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,7 +1,12 @@
+2010-03-26 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/43524
+ * gcc.target/i386/pr43524.c: New test.
+
2010-03-26 Martin Jambor <mjambor@suse.cz>
- * gcc/testsuite/gcc.dg/tree-ssa/loadpre1.c: Deleted trailing
- whitespace, renamed main to foo.
+ * gcc/testsuite/gcc.dg/tree-ssa/loadpre1.c: Delete trailing
+ whitespace, rename main to foo.
* gcc/testsuite/gcc.dg/tree-ssa/loadpre14.c: Likewise.
* gcc/testsuite/gcc.dg/tree-ssa/loadpre15.c: Likewise.
* gcc/testsuite/gcc.dg/tree-ssa/loadpre16.c: Likewise.
@@ -37,7 +42,7 @@
* objc-obj-c++-shared/next-mapping.h: New file.
* objc/execute/next_mapping.h: Delete.
* objc.dg/special/special.exp: For all targets run the tests with
- -fgnu-runtime, for darwin targets also run the tests with
+ -fgnu-runtime, for darwin targets also run the tests with
-fnext-runtime.
* objc.dg/dg.exp: Ditto.
* obj-c++.dg/dg.exp: Ditto.
@@ -46,7 +51,7 @@
include use of updated NeXT interface.
* objc/execute/formal_protocol-5.m: Ditto.
* objc/execute/protocol-isEqual-2.m: Ditto.
- * objc/execute/protocol-isEqual-4.m: Ditto.
+ * objc/execute/protocol-isEqual-4.m: Ditto.
* objc/execute/class-11.m: Use shared wrapper headers (Object1.h,
Protocol1.h) and next-mapping.h as required.
* objc/execute/object_is_class.m: Ditto.
@@ -188,7 +193,7 @@
* objc.dg/fix-and-continue-2.m: Ditto.
* objc.dg/method-9.m: Ditto.
* objc.dg/isa-field-1.m: Ditto.
- * objc.dg/local-decl-2.m: Ditto.
+ * objc.dg/local-decl-2.m: Ditto.
* objc.dg/objc-gc-4.m: Ditto.
* objc.dg/type-stream-1.m: Skip for NeXT runtime.
* objc.dg/gnu-runtime-3.m: Ditto.
@@ -197,7 +202,7 @@
* objc.dg/selector-3.m: Ditto.
* objc.dg/gnu-runtime-1.m: Ditto.
* objc.dg/const-str-12.m: Ditto.
- * objc.dg/gnu-runtime-2.m: Ditto.
+ * objc.dg/gnu-runtime-2.m: Ditto.
* objc.dg/no-extra-load.m: Skip for gnu-runtime.
* objc.dg/selector-1.m: Ditto.
* objc.dg/stubify-2.m: Ditto.
@@ -207,27 +212,27 @@
* objc.dg/next-runtime-1.m: Ditto.
* objc.dg/symtab-1.m: Ditto.
* objc.dg/stubify-1.m: Ditto.
- * objc.dg/bitfield-2.m: Ditto.
+ * objc.dg/bitfield-2.m: Ditto.
* objc.dg/try-catch-10.m: Apply to both runtimes.
* objc.dg/const-str-1.m: Ditto.
* objc.dg/image-info.m: Ditto.
- * objc.dg/encode-9.m: Ditto.
+ * objc.dg/encode-9.m: Ditto.
* objc.dg/pragma-1.m: Apply test to all targets.
* objc.dg/const-str-4.m: Ditto.
* objc.dg/const-str-8.m: Ditto.
* objc.dg/super-class-2.m: Ditto.
* objc.dg/try-catch-5.m: Ditto.
* objc.dg/const-str-10.m: Use shared wrapper headers (Object1.h,
- Protocol1.h) and next-mapping.h as required. Use new NeXT
+ Protocol1.h) and next-mapping.h as required. Use new NeXT
interface as required. Skip for gnu-runtime. Test for .quad
at m64.
* objc.dg/const-str-11.m: Ditto.
- * objc.dg/const-str-9.m: Ditto.
+ * objc.dg/const-str-9.m: Ditto.
* objc.dg/method-4.m: Skip for 64Bit NeXT.
* objc.dg/encode-1.m: Remove redundant -lobjc.
* objc.dg/try-catch-9.m: Tidy space.
* obj-c++.dg/method-19.mm: Use shared wrapper headers (Object1.h,
- Protocol1.h) and next-mapping.h as required. XFAIL run if NeXT
+ Protocol1.h) and next-mapping.h as required. XFAIL run if NeXT
and 64bit. Use new NeXT interface as required.
* obj-c++.dg/template-4.mm: Ditto.
* obj-c++.dg/defs.mm: Ditto.
@@ -247,7 +252,7 @@
* obj-c++.dg/template-1.mm: Ditto.
* obj-c++.dg/encode-6.mm: Ditto.
* obj-c++.dg/bitfield-2.mm: Use shared wrapper headers (Object1.h,
- Protocol1.h) and next-mapping.h as required. Use new NeXT
+ Protocol1.h) and next-mapping.h as required. Use new NeXT
interface as required.
* obj-c++.dg/except-1.mm: Ditto.
* obj-c++.dg/const-str-7.mm: Ditto.
@@ -292,15 +297,15 @@
* obj-c++.dg/gnu-runtime-2.mm: Skip if NeXT runtime.
* obj-c++.dg/gnu-runtime-3.mm: Ditto.
* obj-c++.dg/gnu-runtime-1.mm: Ditto.
- * objc.dg/zero-link-2.m: Skip if gnu runtime. Use shared wrapper
- headers (Object1.h, Protocol1.h) and next-mapping.h as required.
+ * objc.dg/zero-link-2.m: Skip if gnu runtime. Use shared wrapper
+ headers (Object1.h, Protocol1.h) and next-mapping.h as required.
Use new NeXT interface as required.
* obj-c++.dg/const-str-10.mm: Ditto.
* obj-c++.dg/const-str-11.mm: Ditto.
* obj-c++.dg/const-str-9.mm: Ditto.
* obj-c++.dg/method-11.mm: Ditto.
- * obj-c++.dg/cxx-ivars-3.mm: Skip if gnu runtime. Use shared wrapper
- headers (Object1.h, Protocol1.h) and next-mapping.h as required.
+ * obj-c++.dg/cxx-ivars-3.mm: Skip if gnu runtime. Use shared wrapper
+ headers (Object1.h, Protocol1.h) and next-mapping.h as required.
Use new NeXT interface as required. XFAIL run if NeXT and 64bit.
* obj-c++.dg/encode-8.mm: Remove redundant -lobjc.
* obj-c++.dg/const-str-1.mm: Run for NeXT as well as gnu.
@@ -343,7 +348,7 @@
2010-03-24 Martin Jambor <mjambor@suse.cz>
* gcc.dg/ipa/ipa-1.c: Delete trailing spaces, put the call to f into
- a loop.
+ a loop.
* gcc.dg/ipa/ipa-2.c: Likewise.
* gcc.dg/ipa/ipa-3.c: Likewise.
* gcc.dg/ipa/ipa-4.c: Likewise.
diff --git a/gcc/testsuite/gcc.target/i386/pr43524.c b/gcc/testsuite/gcc.target/i386/pr43524.c
new file mode 100644
index 0000000..b266270
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr43524.c
@@ -0,0 +1,9 @@
+/* { dg-do compile } */
+/* { dg-options "-mstack-arg-probe" } */
+
+extern void bar (void);
+
+void foo (int i)
+{
+ bar ();
+}