public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/20082] New: unrecognizable insn
@ 2005-02-19 21:29 a dot plot at nettaxi dot com
  2005-03-02 22:20 ` [Bug target/20082] " berndtrog at yahoo dot com
                   ` (4 more replies)
  0 siblings, 5 replies; 8+ messages in thread
From: a dot plot at nettaxi dot com @ 2005-02-19 21:29 UTC (permalink / raw)
  To: gcc-bugs

avr-gcc (GCC) 3.4.3
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Compiling: igncontrol.c
igncontrol.c: In function `__vector_3':
igncontrol.c:121: error: unrecognizable insn:
(insn 16 14 15 0 igncontrol.c:107 (set (reg:QI 46)
        (mem:QI (reg/v:HI 2 r2 [ event_ptr ]) [0 S1 A8])) -1 (insn_list 9 (nil))
    (nil))
igncontrol.c:121: internal compiler error: in extract_insn, at recog.c:2083
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
make: *** [compile/igncontrol.o] Error 1
Process make exited with code 2

Parts of code:
...
// Globals
register char *event_ptr asm("r2");
...
SIGNAL(SIG_OUTPUT_COMPARE2)
{
	// if (event_cnt == jump_point_keep)
	// 	event_cnt = jump_point;

	// Set output signals
	IGN_CONTROL = *event_ptr++ & ctrl_mask_keep;

	unsigned char cmp_tmp = *event_ptr++;

// If use of separate lines like:
//
//    unsigned char cmp_tmp = *event_ptr;
//    event_ptr++;
//
// so everything works fine.


	if (cmp_tmp)
		TIM2_CMP = cmp_tmp;
	else
	{
		STOP_TIM2();
		TIMSK = tim_mask;
		IGN_FEED = 1;
	}
}
...


Preprocessor:
...
void __vector_3 (void) __attribute__ ((signal)); void __vector_3 (void)
{




 (*(volatile uint8_t *)((0x15) + 0x20)) = *event_ptr++ & ctrl_mask_keep;

 unsigned char cmp_tmp = *event_ptr++;





 if (cmp_tmp)
  (*(volatile uint8_t *)((0x23) + 0x20)) = cmp_tmp;
 else
 {
  (*(volatile uint8_t *)((0x25) + 0x20)) = 0x00;
  (*(volatile uint8_t *)((0x39) + 0x20)) = tim_mask;
  (*(volatile bit_field *) (((uint16_t) &((*(volatile uint8_t *)((0x18) + 0x20))
)))).bit2 = 1;
 }
}

-- 
           Summary: unrecognizable insn
           Product: gcc
           Version: 3.4.3
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: a dot plot at nettaxi dot com
                CC: ericw at evcohs dot com,gcc-bugs at gcc dot gnu dot org
GCC target triplet: avr


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


^ permalink raw reply	[flat|nested] 8+ messages in thread
[parent not found: <bug-20082-10132@http.gcc.gnu.org/bugzilla/>]

end of thread, other threads:[~2007-06-19 16:32 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-02-19 21:29 [Bug target/20082] New: unrecognizable insn a dot plot at nettaxi dot com
2005-03-02 22:20 ` [Bug target/20082] " berndtrog at yahoo dot com
2005-03-02 22:59 ` berndtrog at yahoo dot com
2005-03-02 23:10 ` a dot plot at nettaxi dot com
2005-03-02 23:18 ` giovannibajo at libero dot it
2005-06-01 22:47 ` pinskia at gcc dot gnu dot org
     [not found] <bug-20082-10132@http.gcc.gnu.org/bugzilla/>
2007-06-18 23:04 ` pault at gcc dot gnu dot org
2007-06-19 16:32 ` pault at gcc dot gnu dot 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).