[Bug tree-optimization/47714] [4.6 Regression] verify_ssa fails with error: invalid argument to gimple call
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47714 --- Comment #9 from Jakub Jelinek jakub at gcc dot gnu.org 2011-03-09 08:43:32 UTC --- BTW, if you adjust the testcase (at least not to use explicit DImode type), I'd say this patch is obvious, thunks never take addresses of its parameters and whether the original method takes those addresses is irrelevant to thunks. You could certainly handle TREE_ADDRESSABLE in assemble_thunk by copying siuch arguments into a temporary, but that would be good just to shut up verification.
[Bug tree-optimization/47714] [4.6 Regression] verify_ssa fails with error: invalid argument to gimple call
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47714 --- Comment #10 from Martin Jambor jamborm at gcc dot gnu.org 2011-03-09 12:02:34 UTC --- I have posted the patch (with the simpler testcase, thanks) to the mailing list: http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00461.html If there are no objections, I'll commit it in a few hours.
[Bug tree-optimization/47714] [4.6 Regression] verify_ssa fails with error: invalid argument to gimple call
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47714 --- Comment #11 from Martin Jambor jamborm at gcc dot gnu.org 2011-03-09 16:59:59 UTC --- Author: jamborm Date: Wed Mar 9 16:59:55 2011 New Revision: 170822 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=170822 Log: 2011-03-09 Martin Jambor mjam...@suse.cz PR tree-optimization/47714 * cp/method.c (use_thunk): Clear addressable flag of thunk arguments. * testsuite/g++.dg/torture/pr47714.C: New test. Added: trunk/gcc/testsuite/g++.dg/torture/pr47714.C Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/method.c trunk/gcc/testsuite/ChangeLog
[Bug tree-optimization/47714] [4.6 Regression] verify_ssa fails with error: invalid argument to gimple call
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47714 Martin Jambor jamborm at gcc dot gnu.org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED --- Comment #12 from Martin Jambor jamborm at gcc dot gnu.org 2011-03-09 17:02:23 UTC --- Fixed.
[Bug tree-optimization/47714] [4.6 Regression] verify_ssa fails with error: invalid argument to gimple call
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47714 Richard Guenther rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||ice-on-valid-code, ||wrong-code Priority|P3 |P1 Known to work||4.5.2 Target Milestone|--- |4.6.0 Summary|verify_ssa fails with |[4.6 Regression] verify_ssa |error: invalid argument to |fails with error: invalid |gimple call |argument to gimple call --- Comment #5 from Richard Guenther rguenth at gcc dot gnu.org 2011-03-08 16:56:54 UTC --- Fails at -O0.
[Bug tree-optimization/47714] [4.6 Regression] verify_ssa fails with error: invalid argument to gimple call
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47714 --- Comment #6 from Richard Guenther rguenth at gcc dot gnu.org 2011-03-08 17:07:01 UTC --- More reduced testcase: typedef unsigned int u_int64_t __attribute__ ((__mode__ (__DI__))); class CodeModule { public: virtual ~CodeModule() { } }; class CodeModules { virtual const CodeModule* GetModuleForAddress(u_int64_t address) const = 0; }; templatetypename AddressType, typename EntryType class RangeMap { public: RangeMap() ; bool RetrieveRange(const AddressType address, EntryType *entry) const; }; class MinidumpObject { public: virtual ~MinidumpObject() { } }; class MinidumpModule : public MinidumpObject, public CodeModule { }; class MinidumpModuleList : public CodeModules { virtual const MinidumpModule* GetModuleForAddress(u_int64_t address) const; RangeMapu_int64_t, unsigned int *range_map_; }; const MinidumpModule* MinidumpModuleList::GetModuleForAddress(u_int64_t address) const { unsigned int module_index; range_map_-RetrieveRange(address, module_index); }
[Bug tree-optimization/47714] [4.6 Regression] verify_ssa fails with error: invalid argument to gimple call
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47714 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added CC||jakub at gcc dot gnu.org --- Comment #7 from Jakub Jelinek jakub at gcc dot gnu.org 2011-03-08 20:42:17 UTC --- Even more reduced testcase: struct A { virtual ~A () {} }; struct B { virtual ~B () {} }; struct C { virtual const A *foo (int) const = 0; }; struct E : public B, public A { }; struct F : public C { virtual const E *foo (int) const; }; void bar (int ); const E * F::foo (int x) const { bar (x); return __null; }
[Bug tree-optimization/47714] [4.6 Regression] verify_ssa fails with error: invalid argument to gimple call
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47714 --- Comment #8 from Martin Jambor jamborm at gcc dot gnu.org 2011-03-08 20:46:42 UTC --- Created attachment 23584 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=23584 proposed patch I'm currently bootstrapping and testing this patch.