This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/15286] ICE cause by reload


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-05-04 21:35 -------
Of course the code does not even give a sub register:
(insn 13 12 15 0 pr15286.c:9 (set (reg:DI 126)
        (fix:DI (reg:DF 124))) 216 {fix_truncdfdi2} (insn_list 12 (nil))
    (expr_list:REG_DEAD (reg:DF 124)
        (nil)))
I cannot think of why the subregister is comming up in the first place.
But then again it could be this Apple LOCAL patch which is causing it:
-      /* APPLE LOCAL assign_stack_local_with_alias is used instead of 
-        assign_stack_temp to get better scheduling, at the cost of some 
-        stack space. */
-      rtx mem = assign_stack_local_with_alias (DImode, GET_MODE_SIZE (DImode),
-                                           GET_MODE_ALIGNMENT (DImode));
+      rtx mem = assign_stack_temp (DImode, GET_MODE_SIZE (DImode), 0);

But then again we cannot test with a testcase which ICEs.  I cannot think of any reason why there is a 
sub register there at all.  I think you need to figure out where the sub register is coming from and then 
reduce the testcase around that.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-on-valid-code
            Summary|ICE cause by reload         |ICE cause by reload


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15286


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]