public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/65192] New: [avr-tiny] ICE in tiny_valid_direct_memory_access_range
@ 2015-02-24 14:37 gjl at gcc dot gnu.org
  2015-02-24 21:42 ` [Bug target/65192] " gjl at gcc dot gnu.org
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: gjl at gcc dot gnu.org @ 2015-02-24 14:37 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65192

            Bug ID: 65192
           Summary: [avr-tiny] ICE in
                    tiny_valid_direct_memory_access_range
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Keywords: ice-checking
          Severity: normal
          Priority: P3
         Component: target
          Assignee: senthil_kumar.selvaraj at atmel dot com
          Reporter: gjl at gcc dot gnu.org
            Target: avr

if configured with --enable-checking=all avr-gcc 5.0 fails to build libgcc for
avrtiny:

conftest.c:11:1: internal compiler error: RTL check: expected elt 0 type 'e' or
'u', have 'i' (rtx reg) in tiny_valid_direct_memory_access_range, at
config/avr/avr.c:3228
 main ()
 ^
0x8721938 rtl_check_failed_type2(rtx_def const*, int, int, int, char const*,
int, char const*)
    ../../../gcc.gnu.org/trunk/gcc/rtl.c:722
0x8abfcac tiny_valid_direct_memory_access_range(rtx_def*, machine_mode)
    ../../../gcc.gnu.org/trunk/gcc/config/avr/avr.c:3228
0x8b08e6f gen_movsi(rtx_def*, rtx_def*)
    ../../../gcc.gnu.org/trunk/gcc/config/avr/avr.md:680
0x83fc788 insn_gen_fn::operator()(rtx_def*, rtx_def*) const
    ../../../gcc.gnu.org/trunk/gcc/recog.h:303
0x83fc788 emit_move_insn_1(rtx_def*, rtx_def*)
    ../../../gcc.gnu.org/trunk/gcc/expr.c:3546
0x83fcb6b emit_move_insn(rtx_def*, rtx_def*)
    ../../../gcc.gnu.org/trunk/gcc/expr.c:3641
0x82e3f23 init_set_costs()
    ../../../gcc.gnu.org/trunk/gcc/cfgloopanal.c:371
0x87806ce backend_init_target
    ../../../gcc.gnu.org/trunk/gcc/toplev.c:1717
0x87806ce initialize_rtl()
    ../../../gcc.gnu.org/trunk/gcc/toplev.c:1820
0x84869ed init_function_start(tree_node*)
    ../../../gcc.gnu.org/trunk/gcc/function.c:4892
0x830c3a6 cgraph_node::expand()
    ../../../gcc.gnu.org/trunk/gcc/cgraphunit.c:1857
0x830dca6 expand_all_functions
    ../../../gcc.gnu.org/trunk/gcc/cgraphunit.c:2006
0x830dca6 symbol_table::compile()
    ../../../gcc.gnu.org/trunk/gcc/cgraphunit.c:2359
0x830fa5c symbol_table::finalize_compilation_unit()
    ../../../gcc.gnu.org/trunk/gcc/cgraphunit.c:2436
0x817d593 c_write_global_declarations()
    ../../../gcc.gnu.org/trunk/gcc/c/c-decl.c:10803
Please submit a full bug report,
with preprocessed source if appropriate.


This is because x = XEXP (op, 0)  under the assumption that op is always MEM
which is not the case.  It might also be REG or SUBREG.

BTW, using tiny_valid_direct_memory_access_range or similar in insn condition
in order to refuse some addresses is a bad approach.  Better use
legitimate_address_p and similar hooks.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug target/65192] [avr-tiny] ICE in tiny_valid_direct_memory_access_range
  2015-02-24 14:37 [Bug target/65192] New: [avr-tiny] ICE in tiny_valid_direct_memory_access_range gjl at gcc dot gnu.org
@ 2015-02-24 21:42 ` gjl at gcc dot gnu.org
  2015-02-26 20:35 ` gjl at gcc dot gnu.org
  2015-02-26 21:02 ` gjl at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: gjl at gcc dot gnu.org @ 2015-02-24 21:42 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65192

Georg-Johann Lay <gjl at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug target/65192] [avr-tiny] ICE in tiny_valid_direct_memory_access_range
  2015-02-24 14:37 [Bug target/65192] New: [avr-tiny] ICE in tiny_valid_direct_memory_access_range gjl at gcc dot gnu.org
  2015-02-24 21:42 ` [Bug target/65192] " gjl at gcc dot gnu.org
@ 2015-02-26 20:35 ` gjl at gcc dot gnu.org
  2015-02-26 21:02 ` gjl at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: gjl at gcc dot gnu.org @ 2015-02-26 20:35 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65192

--- Comment #1 from Georg-Johann Lay <gjl at gcc dot gnu.org> ---
Author: gjl
Date: Thu Feb 26 19:43:54 2015
New Revision: 221029

URL: https://gcc.gnu.org/viewcvs?rev=221029&root=gcc&view=rev
Log:
    PR target/65192
    * config/avr/avr-protos.h (tiny_valid_direct_memory_access_range):
    Remove.
    * config/avr/avr.c: Same.
    (avr_legitimate_address_p) <AVR_TINY, CONSTANT_ADDRESS_P>:
    Refuse any constant address not in 0..0xbf.
    * config/avr/avr.md (*mov<mode>, *movsf): Remove
    tiny_valid_direct_memory_access_range from insn conditions.
    (mov<mode>): Don't special-case expansion of avrtiny addresses.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/avr/avr-protos.h
    trunk/gcc/config/avr/avr.c
    trunk/gcc/config/avr/avr.md


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug target/65192] [avr-tiny] ICE in tiny_valid_direct_memory_access_range
  2015-02-24 14:37 [Bug target/65192] New: [avr-tiny] ICE in tiny_valid_direct_memory_access_range gjl at gcc dot gnu.org
  2015-02-24 21:42 ` [Bug target/65192] " gjl at gcc dot gnu.org
  2015-02-26 20:35 ` gjl at gcc dot gnu.org
@ 2015-02-26 21:02 ` gjl at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: gjl at gcc dot gnu.org @ 2015-02-26 21:02 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65192

Georg-Johann Lay <gjl at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #2 from Georg-Johann Lay <gjl at gcc dot gnu.org> ---
Fixed.


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-02-26 19:46 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-02-24 14:37 [Bug target/65192] New: [avr-tiny] ICE in tiny_valid_direct_memory_access_range gjl at gcc dot gnu.org
2015-02-24 21:42 ` [Bug target/65192] " gjl at gcc dot gnu.org
2015-02-26 20:35 ` gjl at gcc dot gnu.org
2015-02-26 21:02 ` gjl at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).