public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/23980] Bad assembly output in Thumb mode with -O2
       [not found] <bug-23980-11386@http.gcc.gnu.org/bugzilla/>
@ 2005-10-07 14:53 ` czimman at bloomberg dot com
  2005-10-07 15:51 ` rearnsha at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 10+ messages in thread
From: czimman at bloomberg dot com @ 2005-10-07 14:53 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from czimman at bloomberg dot com  2005-10-07 14:53 -------
Created an attachment (id=9927)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=9927&action=view)
mmcsd.s

What happens is that a bogus label (.L622) gets created, and is treated as an
unresolved symbol at link time.

Please find mmcsd.s (arm-elf-objdump -D mmcsd.o) attached.

If you still need the entire pre-processed source, I can attach that as well. 


-- 


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


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

* [Bug target/23980] Bad assembly output in Thumb mode with -O2
       [not found] <bug-23980-11386@http.gcc.gnu.org/bugzilla/>
  2005-10-07 14:53 ` [Bug target/23980] Bad assembly output in Thumb mode with -O2 czimman at bloomberg dot com
@ 2005-10-07 15:51 ` rearnsha at gcc dot gnu dot org
  2005-10-07 15:55 ` czimman at bloomberg dot com
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 10+ messages in thread
From: rearnsha at gcc dot gnu dot org @ 2005-10-07 15:51 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from rearnsha at gcc dot gnu dot org  2005-10-07 15:51 -------
Yes we need the preprocessed source code.  Unless I can run the compiler under
a debugger there's no chance of working out what's going wrong.


-- 


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


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

* [Bug target/23980] Bad assembly output in Thumb mode with -O2
       [not found] <bug-23980-11386@http.gcc.gnu.org/bugzilla/>
  2005-10-07 14:53 ` [Bug target/23980] Bad assembly output in Thumb mode with -O2 czimman at bloomberg dot com
  2005-10-07 15:51 ` rearnsha at gcc dot gnu dot org
@ 2005-10-07 15:55 ` czimman at bloomberg dot com
  2005-10-07 15:57 ` rearnsha at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 10+ messages in thread
From: czimman at bloomberg dot com @ 2005-10-07 15:55 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from czimman at bloomberg dot com  2005-10-07 15:54 -------
Created an attachment (id=9928)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=9928&action=view)
mmcsd.i

This is the pre-processed output


-- 


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


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

* [Bug target/23980] Bad assembly output in Thumb mode with -O2
       [not found] <bug-23980-11386@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2005-10-07 15:55 ` czimman at bloomberg dot com
@ 2005-10-07 15:57 ` rearnsha at gcc dot gnu dot org
  2005-10-07 17:10 ` [Bug rtl-optimization/23980] [3.4 Regression] THUMB basic block reordering incorrectly redirects non-simple cond-jump->fallthru rearnsha at gcc dot gnu dot org
  2006-03-09  0:33 ` pinskia at gcc dot gnu dot org
  5 siblings, 0 replies; 10+ messages in thread
From: rearnsha at gcc dot gnu dot org @ 2005-10-07 15:57 UTC (permalink / raw)
  To: gcc-bugs



-- 

rearnsha at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2005-10-07 15:57:01
               date|                            |


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


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

* [Bug rtl-optimization/23980] [3.4 Regression] THUMB basic block reordering incorrectly redirects non-simple cond-jump->fallthru
       [not found] <bug-23980-11386@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2005-10-07 15:57 ` rearnsha at gcc dot gnu dot org
@ 2005-10-07 17:10 ` rearnsha at gcc dot gnu dot org
  2006-03-09  0:33 ` pinskia at gcc dot gnu dot org
  5 siblings, 0 replies; 10+ messages in thread
From: rearnsha at gcc dot gnu dot org @ 2005-10-07 17:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from rearnsha at gcc dot gnu dot org  2005-10-07 17:10 -------
The problem here is that we have a complex compare-and-jump insn with side
effects, so the insn can't be simply removed.  cfgrtl is getting confused and
is generating code that references a deleted label.


-- 

rearnsha at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rearnsha at gcc dot gnu dot
                   |                            |org
          Component|target                      |rtl-optimization
   GCC host triplet|i386-unknown-linux          |
            Summary|Bad assembly output in Thumb|[3.4 Regression] THUMB basic
                   |mode with -O2               |block reordering incorrectly
                   |                            |redirects non-simple cond-
                   |                            |jump->fallthru


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


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

* [Bug rtl-optimization/23980] [3.4 Regression] THUMB basic block reordering incorrectly redirects non-simple cond-jump->fallthru
       [not found] <bug-23980-11386@http.gcc.gnu.org/bugzilla/>
                   ` (4 preceding siblings ...)
  2005-10-07 17:10 ` [Bug rtl-optimization/23980] [3.4 Regression] THUMB basic block reordering incorrectly redirects non-simple cond-jump->fallthru rearnsha at gcc dot gnu dot org
@ 2006-03-09  0:33 ` pinskia at gcc dot gnu dot org
  5 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-03-09  0:33 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from pinskia at gcc dot gnu dot org  2006-03-09 00:33 -------
Fixed in 4.0.0.  3.4.6 has been tagged already and has been released (no
announcement has been made but it is up on the ftp server already).


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|---                         |4.0.0


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


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

* [Bug target/23980] Bad assembly output in Thumb mode with -O2
  2005-09-20 16:15 [Bug c/23980] New: Bad assembly output in Thumb mode with -O2 czimman at bloomberg dot com
                   ` (2 preceding siblings ...)
  2005-09-20 17:25 ` czimman at bloomberg dot com
@ 2005-09-30  9:21 ` rearnsha at gcc dot gnu dot org
  3 siblings, 0 replies; 10+ messages in thread
From: rearnsha at gcc dot gnu dot org @ 2005-09-30  9:21 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From rearnsha at gcc dot gnu dot org  2005-09-30 09:20 -------
Please send the entire pre-processed file, not just a fragment of it.  Use the
'create a new attachment' link on the bugzilla page (see URL below).

You are also going to have to explain what you think is wrong with the currently
generated assembly file.  I can't tell from the information you've provided what
you think is wrong.


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |WAITING


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


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

* [Bug target/23980] Bad assembly output in Thumb mode with -O2
  2005-09-20 16:15 [Bug c/23980] New: Bad assembly output in Thumb mode with -O2 czimman at bloomberg dot com
  2005-09-20 16:18 ` [Bug target/23980] " pinskia at gcc dot gnu dot org
  2005-09-20 16:21 ` pinskia at gcc dot gnu dot org
@ 2005-09-20 17:25 ` czimman at bloomberg dot com
  2005-09-30  9:21 ` rearnsha at gcc dot gnu dot org
  3 siblings, 0 replies; 10+ messages in thread
From: czimman at bloomberg dot com @ 2005-09-20 17:25 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From czimman at bloomberg dot com  2005-09-20 17:25 -------
-Wall gives a warning about i not being used, but that's it.  We normally 
always build with -Wall enabled.

Here's the preprocessed output:

int
mmcsd_read(void * dst, void * src, unsigned int len)
{
    int return_val = NETI_OK;
    int i = 0;

    cyg_mutex_lock(&mmcsd.mutex);

    if(!mmcsd.card_initialized) {
 cyg_mutex_unlock(&mmcsd.mutex);
 printf("mmcsd_read(buf, 0x%x, %d) returnign error\n",(unsigned int) src, len);
 return NETI_MMCSD_CARD_UNINITIALIZED;
    }

    *((volatile CYG_WORD32 *)(({ CYG_ADDRWORD _p = (CYG_ADDRWORD)(0x00214000 + 
0x24); if (_p >= 0x12000000 && _p < (0x12000000 +0x00400000)) _p = (_p & 
(0x00400000 -1)) + 0x00000000; else if (_p >= 0x00200000 && _p < (0x00200000 
+0x00100000)) _p = (_p & (0x00100000 -1)) + 0xA0000000; _p; }))) |= ((1 << 6));

    disconnect_card_detect_pullup();

    if(!len) {
 cyg_mutex_unlock(&mmcsd.mutex);

 printf("mmcsd_read(buf, 0x%x, %d) returning len = 0\n",(unsigned int) src, 
len);

 return NETI_OK;
    }
    if((((unsigned int)src)/512 + len/512) > mmcsd.device_size) {
 cyg_mutex_unlock(&mmcsd.mutex);

 printf("mmcsd_read(buf, 0x%x, %d) returnign error\n",(unsigned int) src, len);

 return NETI_MMCSD_INVALID_CARD_ADDRESS;
    }

    if(len % 512) {
 cyg_mutex_unlock(&mmcsd.mutex);

 printf("mmcsd_read(buf, 0x%x, %d) returnign error\n",(unsigned int) src, len);

 return NETI_MMCSD_INVALID_CARD_ADDRESS;
    }

    if(((unsigned int)src) % 512) {
 cyg_mutex_unlock(&mmcsd.mutex);

 printf("mmcsd_read(buf, 0x%x, %d) returnign error\n",(unsigned int) src, len);

 return NETI_MMCSD_INVALID_CARD_ADDRESS;
    }

    if((return_val = mmcsd_dma_read_blks(dst, (unsigned int) src, len/512)) != 
NETI_OK) {
 cyg_mutex_unlock(&mmcsd.mutex);

 printf("mmcsd_read(buf, 0x%x, %d) returnign error\n",(unsigned int) src, len);

 return return_val;
    }

    connect_card_detect_pullup();
    *((volatile CYG_WORD32 *)(({ CYG_ADDRWORD _p = (CYG_ADDRWORD)(0x00214000 + 
0x24); if (_p >= 0x12000000 && _p < (0x12000000 +0x00400000)) _p = (_p & 
(0x00400000 -1)) + 0x00000000; else if (_p >= 0x00200000 && _p < (0x00200000 
+0x00100000)) _p = (_p & (0x00100000 -1)) + 0xA0000000; _p; }))) = *((volatile 
CYG_WORD32 *)(({ CYG_ADDRWORD _p = (CYG_ADDRWORD)(0x00214000 + 0x24); if (_p >= 
0x12000000 && _p < (0x12000000 +0x00400000)) _p = (_p & (0x00400000 -1)) + 
0x00000000; else if (_p >= 0x00200000 && _p < (0x00200000 +0x00100000)) _p = 
(_p & (0x00100000 -1)) + 0xA0000000; _p; }))) & ~((1 << 6));

    cyg_mutex_unlock(&mmcsd.mutex);

    return return_val;
}


-- 


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


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

* [Bug target/23980] Bad assembly output in Thumb mode with -O2
  2005-09-20 16:15 [Bug c/23980] New: Bad assembly output in Thumb mode with -O2 czimman at bloomberg dot com
  2005-09-20 16:18 ` [Bug target/23980] " pinskia at gcc dot gnu dot org
@ 2005-09-20 16:21 ` pinskia at gcc dot gnu dot org
  2005-09-20 17:25 ` czimman at bloomberg dot com
  2005-09-30  9:21 ` rearnsha at gcc dot gnu dot org
  3 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-20 16:21 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-09-20 16:21 -------
can you provide the preprocessed source?

And does -W -Wall give any warnings?

-- 


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


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

* [Bug target/23980] Bad assembly output in Thumb mode with -O2
  2005-09-20 16:15 [Bug c/23980] New: Bad assembly output in Thumb mode with -O2 czimman at bloomberg dot com
@ 2005-09-20 16:18 ` pinskia at gcc dot gnu dot org
  2005-09-20 16:21 ` pinskia at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-20 16:18 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|c                           |target


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


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

end of thread, other threads:[~2006-03-09  0:33 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-23980-11386@http.gcc.gnu.org/bugzilla/>
2005-10-07 14:53 ` [Bug target/23980] Bad assembly output in Thumb mode with -O2 czimman at bloomberg dot com
2005-10-07 15:51 ` rearnsha at gcc dot gnu dot org
2005-10-07 15:55 ` czimman at bloomberg dot com
2005-10-07 15:57 ` rearnsha at gcc dot gnu dot org
2005-10-07 17:10 ` [Bug rtl-optimization/23980] [3.4 Regression] THUMB basic block reordering incorrectly redirects non-simple cond-jump->fallthru rearnsha at gcc dot gnu dot org
2006-03-09  0:33 ` pinskia at gcc dot gnu dot org
2005-09-20 16:15 [Bug c/23980] New: Bad assembly output in Thumb mode with -O2 czimman at bloomberg dot com
2005-09-20 16:18 ` [Bug target/23980] " pinskia at gcc dot gnu dot org
2005-09-20 16:21 ` pinskia at gcc dot gnu dot org
2005-09-20 17:25 ` czimman at bloomberg dot com
2005-09-30  9:21 ` rearnsha 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).