------- Additional Comments From th dot r dot klein at web dot de  2005-08-13 
18:27 -------
I've reduced the function to a useless, but bug still remains.

(sorry: I've forgotten to tar the files so I'm attaching those manualy.)

###########################################################################

~/work/bugreport$ arm-elf-gcc-3.4.4 -v -save-temps -g -Os -fPIC -mthumb
-mlittle-endian -mapcs -march=armv4t-mcallee-super-interworking -c
example_3_4_4.c -o 3_4_4_thumb.o
Reading specs from /usr/local/lib/gcc/arm-elf/3.4.4/specs
Configured with: ../../gcc-3.4.4/configure --target=arm-elf --disable-threads
--disable-nls --without-headers --without-libs --enable-languages=c
Thread model: single
gcc version 3.4.4
 /usr/local/libexec/gcc/arm-elf/3.4.4/cc1 -E -quiet -v -D__ARM_ARCH_4T__
-D__USES_INITFINI__ example_3_4_4.c -mthumb -mlittle-endian -mapcs -march=armv4t
-mcallee-super-interworking -fPIC -fworking-directory -Os -o example_3_4_4.i
ignoring nonexistent directory
"/usr/local/lib/gcc/arm-elf/3.4.4/../../../../arm-elf/sys-include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/lib/gcc/arm-elf/3.4.4/include
 /usr/local/lib/gcc/arm-elf/3.4.4/../../../../arm-elf/include
End of search list.
 /usr/local/libexec/gcc/arm-elf/3.4.4/cc1 -fpreprocessed example_3_4_4.i -quiet
-dumpbase example_3_4_4.c -mthumb-mlittle-endian -mapcs -march=armv4t
-mcallee-super-interworking -auxbase-strip 3_4_4_thumb.o -g -Os -version -fPIC
-o example_3_4_4.s
GNU C version 3.4.4 (arm-elf)
        compiled by GNU C version 3.4.2 [FreeBSD] 20040728.
GGC heuristics: --param ggc-min-expand=65 --param ggc-min-heapsize=65536
 /usr/local/lib/gcc/arm-elf/3.4.4/../../../../arm-elf/bin/as -EL -march=armv4t
-o 3_4_4_thumb.o example_3_4_4.s

###########################################################################
file example_3_4_4.i
###########################################################################
# 1 "example_3_4_4.c"
# 1 "/home/thomas/work/bugreport//"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "example_3_4_4.c"



typedef char int8_t;
typedef short int16_t;
typedef int int32_t;

typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned long uint32_t;


typedef int __attribute__((__mode__(__DI__))) int64_t;
typedef unsigned int __attribute__((__mode__(__DI__))) uint64_t;
# 34 "example_3_4_4.c"
int progWord(uint32_t base_address,uint32_t address,uint32_t data)
{
 volatile uint32_t *dataPtr;
 uint32_t rd_data;


 *((volatile uint32_t *)(base_address + (0x555uL<<2))) = 0xAAAAaaaa;

 dataPtr = (uint32_t *)address;
 *dataPtr = data;

 return 0;
}
###########################################################################
file example_3_4_4.s
###########################################################################
        .code   16
        .file   "example_3_4_4.c"
        .section        .debug_abbrev,"",%progbits
.Ldebug_abbrev0:
        .section        .debug_info,"",%progbits
.Ldebug_info0:
        .section        .debug_line,"",%progbits
.Ldebug_line0:
        .text
.Ltext0:
        .align  2
        .global progWord
        .code 32
        .type   progWord, %function
progWord:
.LFB2:
        .file 1 "example_3_4_4.c"
        .loc 1 35 0
        orr     ip, pc, #1
        bx      ip
        .code   16
        .globl .real_start_ofprogWord
        .thumb_func
.real_start_ofprogWord:
        .loc 1 40 0
        ldr     r3, .L2
        add     r0, r0, r3
        ldr     r3, .L2+4
        str     r3, [r0]
        .loc 1 46 0
        mov     r0, #0
        .loc 1 43 0
        str     r2, [r1]
        .loc 1 46 0
        @ sp needed for prologue
        bx      lr
.L3:
        .align  2
.L2:
        .word   5460
        .word   -1431655766
.LFE2:
        .size   progWord, .-progWord
        .section        .debug_frame,"",%progbits
.Lframe0:
        .4byte  .LECIE0-.LSCIE0
.LSCIE0:
        .4byte  0xffffffff
        .byte   0x1
        .ascii  "\000"
        .uleb128 0x1
        .sleb128 -4
        .byte   0xe
        .byte   0xc
        .uleb128 0xd
        .uleb128 0x0
        .align  2
.LECIE0:
.LSFDE0:
        .4byte  .LEFDE0-.LASFDE0
.LASFDE0:
        .4byte  .Lframe0
        .4byte  .LFB2
        .4byte  .LFE2-.LFB2
        .align  2
.LEFDE0:
        .text
.Letext0:
        .section        .debug_info
        .4byte  0xc9
        .2byte  0x2
        .4byte  .Ldebug_abbrev0
        .byte   0x4
        .uleb128 0x1
        .4byte  .Ldebug_line0
        .4byte  .Letext0
        .4byte  .Ltext0
        .4byte  .LASF12
        .byte   0x1
        .4byte  .LASF13
        .4byte  .LASF14
        .uleb128 0x2
        .4byte  .LASF0
        .byte   0x1
        .byte   0x8
        .uleb128 0x2
        .4byte  .LASF1
        .byte   0x2
        .byte   0x5
        .uleb128 0x3
        .ascii  "int\000"
        .byte   0x4
        .byte   0x5
        .uleb128 0x2
        .4byte  .LASF2
        .byte   0x1
        .byte   0x8
        .uleb128 0x2
        .4byte  .LASF3
        .byte   0x2
        .byte   0x7
        .uleb128 0x4
        .4byte  .LASF15
        .byte   0x1
        .byte   0xa
        .4byte  0x53
        .uleb128 0x2
        .4byte  .LASF4
        .byte   0x4
        .byte   0x7
        .uleb128 0x2
        .4byte  .LASF5
        .byte   0x8
        .byte   0x5
        .uleb128 0x2
        .4byte  .LASF6
        .byte   0x8
        .byte   0x7
        .uleb128 0x5
        .4byte  0xc1
        .byte   0x1
        .4byte  .LASF16
        .byte   0x1
        .byte   0x23
        .byte   0x1
        .4byte  0x33
        .4byte  .LFB2
        .4byte  .LFE2
        .byte   0x1
        .byte   0x5d
        .uleb128 0x6
        .4byte  .LASF7
        .byte   0x1
        .byte   0x22
        .4byte  0x48
        .byte   0x1
        .byte   0x50
        .uleb128 0x6
        .4byte  .LASF8
        .byte   0x1
        .byte   0x22
        .4byte  0x48
        .byte   0x1
        .byte   0x51
        .uleb128 0x6
        .4byte  .LASF9
        .byte   0x1
        .byte   0x22
        .4byte  0x48
        .byte   0x1
        .byte   0x52
        .uleb128 0x7
        .4byte  .LASF10
        .byte   0x1
        .byte   0x24
        .4byte  0xc1
        .uleb128 0x7
        .4byte  .LASF11
        .byte   0x1
        .byte   0x25
        .4byte  0x48
        .byte   0x0
        .uleb128 0x8
        .byte   0x4
        .4byte  0xc7
        .uleb128 0x9
        .4byte  0x48
        .byte   0x0
        .section        .debug_abbrev
        .uleb128 0x1
        .uleb128 0x11
        .byte   0x1
        .uleb128 0x10
        .uleb128 0x6
        .uleb128 0x12
        .uleb128 0x1
        .uleb128 0x11
        .uleb128 0x1
        .uleb128 0x25
        .uleb128 0xe
        .uleb128 0x13
        .uleb128 0xb
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x1b
        .uleb128 0xe
        .byte   0x0
        .byte   0x0
        .uleb128 0x2
        .uleb128 0x24
        .byte   0x0
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0xb
        .uleb128 0xb
        .uleb128 0x3e
        .uleb128 0xb
        .byte   0x0
        .byte   0x0
        .uleb128 0x3
        .uleb128 0x24
        .byte   0x0
        .uleb128 0x3
        .uleb128 0x8
        .uleb128 0xb
        .uleb128 0xb
        .uleb128 0x3e
        .uleb128 0xb
        .byte   0x0
        .byte   0x0
        .uleb128 0x4
        .uleb128 0x16
        .byte   0x0
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x3a
        .uleb128 0xb
        .uleb128 0x3b
        .uleb128 0xb
        .uleb128 0x49
        .uleb128 0x13
        .byte   0x0
        .byte   0x0
        .uleb128 0x5
        .uleb128 0x2e
        .byte   0x1
        .uleb128 0x1
        .uleb128 0x13
        .uleb128 0x3f
        .uleb128 0xc
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x3a
        .uleb128 0xb
        .uleb128 0x3b
        .uleb128 0xb
        .uleb128 0x27
        .uleb128 0xc
        .uleb128 0x49
        .uleb128 0x13
        .uleb128 0x11
        .uleb128 0x1
        .uleb128 0x12
        .uleb128 0x1
        .uleb128 0x40
        .uleb128 0xa
        .byte   0x0
        .byte   0x0
        .uleb128 0x6
        .uleb128 0x5
        .byte   0x0
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x3a
        .uleb128 0xb
        .uleb128 0x3b
        .uleb128 0xb
        .uleb128 0x49
        .uleb128 0x13
        .uleb128 0x2
        .uleb128 0xa
        .byte   0x0
        .byte   0x0
        .uleb128 0x7
        .uleb128 0x34
        .byte   0x0
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x3a
        .uleb128 0xb
        .uleb128 0x3b
        .uleb128 0xb
        .uleb128 0x49
        .uleb128 0x13
        .byte   0x0
        .byte   0x0
        .uleb128 0x8
        .uleb128 0xf
        .byte   0x0
        .uleb128 0xb
        .uleb128 0xb
        .uleb128 0x49
        .uleb128 0x13
        .byte   0x0
        .byte   0x0
        .uleb128 0x9
        .uleb128 0x35
        .byte   0x0
        .uleb128 0x49
        .uleb128 0x13
        .byte   0x0
        .byte   0x0
        .byte   0x0
        .section        .debug_pubnames,"",%progbits
        .4byte  0x1b
        .2byte  0x2
        .4byte  .Ldebug_info0
        .4byte  0xcd
        .4byte  0x68
        .ascii  "progWord\000"
        .4byte  0x0
        .section        .debug_aranges,"",%progbits
        .4byte  0x1c
        .2byte  0x2
        .4byte  .Ldebug_info0
        .byte   0x4
        .byte   0x0
        .2byte  0x0
        .2byte  0x0
        .4byte  .Ltext0
        .4byte  .Letext0-.Ltext0
        .4byte  0x0
        .4byte  0x0
        .section        .debug_str,"MS",%progbits,1
.LASF5:
        .ascii  "long long int\000"
.LASF7:
        .ascii  "base_address\000"
.LASF14:
        .ascii  "/home/thomas/work/bugreport\000"
.LASF12:
        .ascii  "GNU C 3.4.4\000"
.LASF8:
        .ascii  "address\000"
.LASF4:
        .ascii  "long unsigned int\000"
.LASF6:
        .ascii  "long long unsigned int\000"
.LASF13:
        .ascii  "example_3_4_4.c\000"
.LASF2:
        .ascii  "unsigned char\000"
.LASF9:
        .ascii  "data\000"
.LASF15:
        .ascii  "uint32_t\000"
.LASF3:
        .ascii  "short unsigned int\000"
.LASF16:
        .ascii  "progWord\000"
.LASF11:
        .ascii  "rd_data\000"
.LASF1:
        .ascii  "short int\000"
.LASF10:
        .ascii  "dataPtr\000"
.LASF0:
        .ascii  "char\000"
        .ident  "GCC: (GNU) 3.4.4"
        .code   16
        .file   "example_3_4_4.c"
        .section        .debug_abbrev,"",%progbits
.Ldebug_abbrev0:
        .section        .debug_info,"",%progbits
.Ldebug_info0:
        .section        .debug_line,"",%progbits
.Ldebug_line0:
        .text
.Ltext0:
        .align  2
        .global progWord
        .code 32
        .type   progWord, %function
progWord:
.LFB2:
        .file 1 "example_3_4_4.c"
        .loc 1 35 0
        orr     ip, pc, #1
        bx      ip
        .code   16
        .globl .real_start_ofprogWord
        .thumb_func
.real_start_ofprogWord:
        .loc 1 40 0
        ldr     r3, .L2
        add     r0, r0, r3
        ldr     r3, .L2+4
        str     r3, [r0]
        .loc 1 46 0
        mov     r0, #0
        .loc 1 43 0
        str     r2, [r1]
        .loc 1 46 0
        @ sp needed for prologue
        bx      lr
.L3:
        .align  2
.L2:
        .word   5460
        .word   -1431655766
.LFE2:
        .size   progWord, .-progWord
        .section        .debug_frame,"",%progbits
.Lframe0:
        .4byte  .LECIE0-.LSCIE0
.LSCIE0:
        .4byte  0xffffffff
        .byte   0x1
        .ascii  "\000"
        .uleb128 0x1
        .sleb128 -4
        .byte   0xe
        .byte   0xc
        .uleb128 0xd
        .uleb128 0x0
        .align  2
.LECIE0:
.LSFDE0:
        .4byte  .LEFDE0-.LASFDE0
.LASFDE0:
        .4byte  .Lframe0
        .4byte  .LFB2
        .4byte  .LFE2-.LFB2
        .align  2
.LEFDE0:
        .text
.Letext0:
        .section        .debug_info
        .4byte  0xc9
        .2byte  0x2
        .4byte  .Ldebug_abbrev0
        .byte   0x4
        .uleb128 0x1
        .4byte  .Ldebug_line0
        .4byte  .Letext0
        .4byte  .Ltext0
        .4byte  .LASF12
        .byte   0x1
        .4byte  .LASF13
        .4byte  .LASF14
        .uleb128 0x2
        .4byte  .LASF0
        .byte   0x1
        .byte   0x8
        .uleb128 0x2
        .4byte  .LASF1
        .byte   0x2
        .byte   0x5
        .uleb128 0x3
        .ascii  "int\000"
        .byte   0x4
        .byte   0x5
        .uleb128 0x2
        .4byte  .LASF2
        .byte   0x1
        .byte   0x8
        .uleb128 0x2
        .4byte  .LASF3
        .byte   0x2
        .byte   0x7
        .uleb128 0x4
        .4byte  .LASF15
        .byte   0x1
        .byte   0xa
        .4byte  0x53
        .uleb128 0x2
        .4byte  .LASF4
        .byte   0x4
        .byte   0x7
        .uleb128 0x2
        .4byte  .LASF5
        .byte   0x8
        .byte   0x5
        .uleb128 0x2
        .4byte  .LASF6
        .byte   0x8
        .byte   0x7
        .uleb128 0x5
        .4byte  0xc1
        .byte   0x1
        .4byte  .LASF16
        .byte   0x1
        .byte   0x23
        .byte   0x1
        .4byte  0x33
        .4byte  .LFB2
        .4byte  .LFE2
        .byte   0x1
        .byte   0x5d
        .uleb128 0x6
        .4byte  .LASF7
        .byte   0x1
        .byte   0x22
        .4byte  0x48
        .byte   0x1
        .byte   0x50
        .uleb128 0x6
        .4byte  .LASF8
        .byte   0x1
        .byte   0x22
        .4byte  0x48
        .byte   0x1
        .byte   0x51
        .uleb128 0x6
        .4byte  .LASF9
        .byte   0x1
        .byte   0x22
        .4byte  0x48
        .byte   0x1
        .byte   0x52
        .uleb128 0x7
        .4byte  .LASF10
        .byte   0x1
        .byte   0x24
        .4byte  0xc1
        .uleb128 0x7
        .4byte  .LASF11
        .byte   0x1
        .byte   0x25
        .4byte  0x48
        .byte   0x0
        .uleb128 0x8
        .byte   0x4
        .4byte  0xc7
        .uleb128 0x9
        .4byte  0x48
        .byte   0x0
        .section        .debug_abbrev
        .uleb128 0x1
        .uleb128 0x11
        .byte   0x1
        .uleb128 0x10
        .uleb128 0x6
        .uleb128 0x12
        .uleb128 0x1
        .uleb128 0x11
        .uleb128 0x1
        .uleb128 0x25
        .uleb128 0xe
        .uleb128 0x13
        .uleb128 0xb
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x1b
        .uleb128 0xe
        .byte   0x0
        .byte   0x0
        .uleb128 0x2
        .uleb128 0x24
        .byte   0x0
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0xb
        .uleb128 0xb
        .uleb128 0x3e
        .uleb128 0xb
        .byte   0x0
        .byte   0x0
        .uleb128 0x3
        .uleb128 0x24
        .byte   0x0
        .uleb128 0x3
        .uleb128 0x8
        .uleb128 0xb
        .uleb128 0xb
        .uleb128 0x3e
        .uleb128 0xb
        .byte   0x0
        .byte   0x0
        .uleb128 0x4
        .uleb128 0x16
        .byte   0x0
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x3a
        .uleb128 0xb
        .uleb128 0x3b
        .uleb128 0xb
        .uleb128 0x49
        .uleb128 0x13
        .byte   0x0
        .byte   0x0
        .uleb128 0x5
        .uleb128 0x2e
        .byte   0x1
        .uleb128 0x1
        .uleb128 0x13
        .uleb128 0x3f
        .uleb128 0xc
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x3a
        .uleb128 0xb
        .uleb128 0x3b
        .uleb128 0xb
        .uleb128 0x27
        .uleb128 0xc
        .uleb128 0x49
        .uleb128 0x13
        .uleb128 0x11
        .uleb128 0x1
        .uleb128 0x12
        .uleb128 0x1
        .uleb128 0x40
        .uleb128 0xa
        .byte   0x0
        .byte   0x0
        .uleb128 0x6
        .uleb128 0x5
        .byte   0x0
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x3a
        .uleb128 0xb
        .uleb128 0x3b
        .uleb128 0xb
        .uleb128 0x49
        .uleb128 0x13
        .uleb128 0x2
        .uleb128 0xa
        .byte   0x0
        .byte   0x0
        .uleb128 0x7
        .uleb128 0x34
        .byte   0x0
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x3a
        .uleb128 0xb
        .uleb128 0x3b
        .uleb128 0xb
        .uleb128 0x49
        .uleb128 0x13
        .byte   0x0
        .byte   0x0
        .uleb128 0x8
        .uleb128 0xf
        .byte   0x0
        .uleb128 0xb
        .uleb128 0xb
        .uleb128 0x49
        .uleb128 0x13
        .byte   0x0
        .byte   0x0
        .uleb128 0x9
        .uleb128 0x35
        .byte   0x0
        .uleb128 0x49
        .uleb128 0x13
        .byte   0x0
        .byte   0x0
        .byte   0x0
        .section        .debug_pubnames,"",%progbits
        .4byte  0x1b
        .2byte  0x2
        .4byte  .Ldebug_info0
        .4byte  0xcd
        .4byte  0x68
        .ascii  "progWord\000"
        .4byte  0x0
        .section        .debug_aranges,"",%progbits
        .4byte  0x1c
        .2byte  0x2
        .4byte  .Ldebug_info0
        .byte   0x4
        .byte   0x0
        .2byte  0x0
        .2byte  0x0
        .4byte  .Ltext0
        .4byte  .Letext0-.Ltext0
        .4byte  0x0
        .4byte  0x0
        .section        .debug_str,"MS",%progbits,1
.LASF5:
        .ascii  "long long int\000"
.LASF7:
        .ascii  "base_address\000"
.LASF14:
        .ascii  "/home/thomas/work/bugreport\000"
.LASF12:
        .ascii  "GNU C 3.4.4\000"
.LASF8:
        .ascii  "address\000"
.LASF4:
        .ascii  "long unsigned int\000"
.LASF6:
        .ascii  "long long unsigned int\000"
.LASF13:
        .ascii  "example_3_4_4.c\000"
.LASF2:
        .ascii  "unsigned char\000"
.LASF9:
        .ascii  "data\000"
.LASF15:
        .ascii  "uint32_t\000"
.LASF3:
        .ascii  "short unsigned int\000"
.LASF16:
        .ascii  "progWord\000"
.LASF11:
        .ascii  "rd_data\000"
.LASF1:
        .ascii  "short int\000"
.LASF10:
        .ascii  "dataPtr\000"
.LASF0:
        .ascii  "char\000"
        .ident  "GCC: (GNU) 3.4.4"

###########################################################################

~/work/bugreport$ arm-elf-gcc-4.0.1 -v -save-temps -g -Os -fPIC -mthumb
-mlittle-endian -mapcs -march=armv4t-mcallee-super-interworking -c example.c -o
4_0_1_thumb.o
Using built-in specs.
Target: arm-elf
Configured with: ../../gcc-4.0.1/configure --target=arm-elf --disable-threads
--disable-nls --without-headers --without-libs --enable-languages=c
Thread model: single
gcc version 4.0.1
 /usr/local/libexec/gcc/arm-elf/4.0.1/cc1 -E -quiet -v -D__USES_INITFINI__
example.c -mthumb -mlittle-endian -mapcs -march=armv4t
-mcallee-super-interworking -fPIC -fworking-directory -Os -fpch-preprocess -o
example.i
ignoring nonexistent directory
"/usr/local/lib/gcc/arm-elf/4.0.1/../../../../arm-elf/sys-include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/lib/gcc/arm-elf/4.0.1/include
 /usr/local/lib/gcc/arm-elf/4.0.1/../../../../arm-elf/include
End of search list.
 /usr/local/libexec/gcc/arm-elf/4.0.1/cc1 -fpreprocessed example.i -quiet
-dumpbase example.c -mthumb -mlittle-endian -mapcs -march=armv4t
-mcallee-super-interworking -auxbase-strip 4_0_1_thumb.o -g -Os -version -fPIC
-o example.s
GNU C version 4.0.1 (arm-elf)
        compiled by GNU C version 3.4.2 [FreeBSD] 20040728.
GGC heuristics: --param ggc-min-expand=99 --param ggc-min-heapsize=129972
 /usr/local/lib/gcc/arm-elf/4.0.1/../../../../arm-elf/bin/as -EL -march=armv4t
-o 4_0_1_thumb.o example.s

###########################################################################
file example.i
###########################################################################
# 1 "example.c"
# 1 "/home/thomas/work/bugreport//"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "example.c"



typedef char int8_t;
typedef short int16_t;
typedef int int32_t;

typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned long uint32_t;


typedef int __attribute__((__mode__(__DI__))) int64_t;
typedef unsigned int __attribute__((__mode__(__DI__))) uint64_t;
# 34 "example.c"
int progWord(uint32_t base_address,uint32_t address,uint32_t data)
{
 volatile uint32_t *dataPtr;
 uint32_t rd_data;


 *((volatile uint32_t *)(base_address + (0x555uL<<2))) = 0xAAAAaaaa;

 dataPtr = (uint32_t *)address;
 *dataPtr = data;

 return 0;
}
###########################################################################
file example.s
###########################################################################
        .code   16
        .file   "example.c"
        .section        .debug_abbrev,"",%progbits
.Ldebug_abbrev0:
        .section        .debug_info,"",%progbits
.Ldebug_info0:
        .section        .debug_line,"",%progbits
.Ldebug_line0:
        .text
.Ltext0:
        .align  2
        .global progWord
        .code 32
        .type   progWord, %function
progWord:
.LFB2:
        .file 1 "example.c"
        .loc 1 35 0
        orr     ip, pc, #1
        bx      ip
        .code   16
        .globl .real_start_ofprogWord
        .thumb_func
.real_start_ofprogWord:
        push    {r7}
.LCFI0:
        mov     r7, sl
        push    {r7}
.LCFI1:
.LVL0:
        .loc 1 40 0
        ldr     r3, .L3
        add     r0, r0, r3
.LVL1:
        ldr     r3, .L3+4
        str     r3, [r0]
        .loc 1 46 0
        mov     r0, #0
        .loc 1 43 0
        str     r2, [r1]
        .loc 1 46 0
        @ sp needed for prologue
        pop     {r2}
        mov     sl, r2
        pop     {r7}
        bx      lr
.L4:
        .align  2
.L3:
        .word   5460
        .word   -1431655766
.LFE2:
        .size   progWord, .-progWord
        .section        .debug_frame,"",%progbits
.Lframe0:
        .4byte  .LECIE0-.LSCIE0
.LSCIE0:
        .4byte  0xffffffff
        .byte   0x1
        .ascii  "\000"
        .uleb128 0x1
        .sleb128 -4
        .byte   0xe
        .byte   0xc
        .uleb128 0xd
        .uleb128 0x0
        .align  2
.LECIE0:
.LSFDE0:
        .4byte  .LEFDE0-.LASFDE0
.LASFDE0:
        .4byte  .Lframe0
        .4byte  .LFB2
        .4byte  .LFE2-.LFB2
        .byte   0x4
        .4byte  .LCFI0-.LFB2
        .byte   0xe
        .uleb128 0x4
        .byte   0x87
        .uleb128 0x1
        .byte   0x4
        .4byte  .LCFI1-.LCFI0
        .byte   0xe
        .uleb128 0x8
        .byte   0x8a
        .uleb128 0x2
        .align  2
.LEFDE0:
        .text
.Letext0:
        .section        .debug_loc,"",%progbits
.Ldebug_loc0:
.LLST0:
        .4byte  .LVL0-.Ltext0
        .4byte  .LVL1-.Ltext0
        .2byte  0x1
        .byte   0x50
        .4byte  0x0
        .4byte  0x0
        .section        .debug_info
        .4byte  0xcc
        .2byte  0x2
        .4byte  .Ldebug_abbrev0
        .byte   0x4
        .uleb128 0x1
        .4byte  .Ldebug_line0
        .4byte  .Letext0
        .4byte  .Ltext0
        .4byte  .LASF12
        .byte   0x1
        .4byte  .LASF13
        .4byte  .LASF14
        .uleb128 0x2
        .4byte  .LASF0
        .byte   0x1
        .byte   0x8
        .uleb128 0x2
        .4byte  .LASF1
        .byte   0x2
        .byte   0x5
        .uleb128 0x3
        .ascii  "int\000"
        .byte   0x4
        .byte   0x5
        .uleb128 0x2
        .4byte  .LASF2
        .byte   0x1
        .byte   0x8
        .uleb128 0x2
        .4byte  .LASF3
        .byte   0x2
        .byte   0x7
        .uleb128 0x4
        .4byte  .LASF15
        .byte   0x1
        .byte   0xa
        .4byte  0x53
        .uleb128 0x2
        .4byte  .LASF4
        .byte   0x4
        .byte   0x7
        .uleb128 0x2
        .4byte  .LASF5
        .byte   0x8
        .byte   0x5
        .uleb128 0x2
        .4byte  .LASF6
        .byte   0x8
        .byte   0x7
        .uleb128 0x5
        .4byte  0xc4
        .byte   0x1
        .4byte  .LASF16
        .byte   0x1
        .byte   0x23
        .byte   0x1
        .4byte  0x33
        .4byte  .LFB2
        .4byte  .LFE2
        .byte   0x2
        .byte   0x7d
        .sleb128 0
        .uleb128 0x6
        .4byte  .LASF7
        .byte   0x1
        .byte   0x22
        .4byte  0x48
        .4byte  .LLST0
        .uleb128 0x7
        .4byte  .LASF8
        .byte   0x1
        .byte   0x22
        .4byte  0x48
        .byte   0x1
        .byte   0x51
        .uleb128 0x7
        .4byte  .LASF9
        .byte   0x1
        .byte   0x22
        .4byte  0x48
        .byte   0x1
        .byte   0x52
        .uleb128 0x8
        .4byte  .LASF10
        .byte   0x1
        .byte   0x24
        .4byte  0xc4
        .uleb128 0x8
        .4byte  .LASF11
        .byte   0x1
        .byte   0x25
        .4byte  0x48
        .byte   0x0
        .uleb128 0x9
        .byte   0x4
        .4byte  0xca
        .uleb128 0xa
        .4byte  0x48
        .byte   0x0
        .section        .debug_abbrev
        .uleb128 0x1
        .uleb128 0x11
        .byte   0x1
        .uleb128 0x10
        .uleb128 0x6
        .uleb128 0x12
        .uleb128 0x1
        .uleb128 0x11
        .uleb128 0x1
        .uleb128 0x25
        .uleb128 0xe
        .uleb128 0x13
        .uleb128 0xb
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x1b
        .uleb128 0xe
        .byte   0x0
        .byte   0x0
        .uleb128 0x2
        .uleb128 0x24
        .byte   0x0
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0xb
        .uleb128 0xb
        .uleb128 0x3e
        .uleb128 0xb
        .byte   0x0
        .byte   0x0
        .uleb128 0x3
        .uleb128 0x24
        .byte   0x0
        .uleb128 0x3
        .uleb128 0x8
        .uleb128 0xb
        .uleb128 0xb
        .uleb128 0x3e
        .uleb128 0xb
        .byte   0x0
        .byte   0x0
        .uleb128 0x4
        .uleb128 0x16
        .byte   0x0
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x3a
        .uleb128 0xb
        .uleb128 0x3b
        .uleb128 0xb
        .uleb128 0x49
        .uleb128 0x13
        .byte   0x0
        .byte   0x0
        .uleb128 0x5
        .uleb128 0x2e
        .byte   0x1
        .uleb128 0x1
        .uleb128 0x13
        .uleb128 0x3f
        .uleb128 0xc
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x3a
        .uleb128 0xb
        .uleb128 0x3b
        .uleb128 0xb
        .uleb128 0x27
        .uleb128 0xc
        .uleb128 0x49
        .uleb128 0x13
        .uleb128 0x11
        .uleb128 0x1
        .uleb128 0x12
        .uleb128 0x1
        .uleb128 0x40
        .uleb128 0xa
        .byte   0x0
        .byte   0x0
        .uleb128 0x6
        .uleb128 0x5
        .byte   0x0
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x3a
        .uleb128 0xb
        .uleb128 0x3b
        .uleb128 0xb
        .uleb128 0x49
        .uleb128 0x13
        .uleb128 0x2
        .uleb128 0x6
        .byte   0x0
        .byte   0x0
        .uleb128 0x7
        .uleb128 0x5
        .byte   0x0
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x3a
        .uleb128 0xb
        .uleb128 0x3b
        .uleb128 0xb
        .uleb128 0x49
        .uleb128 0x13
        .uleb128 0x2
        .uleb128 0xa
        .byte   0x0
        .byte   0x0
        .uleb128 0x8
        .uleb128 0x34
        .byte   0x0
        .uleb128 0x3
        .uleb128 0xe
        .uleb128 0x3a
        .uleb128 0xb
        .uleb128 0x3b
        .uleb128 0xb
        .uleb128 0x49
        .uleb128 0x13
        .byte   0x0
        .byte   0x0
        .uleb128 0x9
        .uleb128 0xf
        .byte   0x0
        .uleb128 0xb
        .uleb128 0xb
        .uleb128 0x49
        .uleb128 0x13
        .byte   0x0
        .byte   0x0
        .uleb128 0xa
        .uleb128 0x35
        .byte   0x0
        .uleb128 0x49
        .uleb128 0x13
        .byte   0x0
        .byte   0x0
        .byte   0x0
        .section        .debug_pubnames,"",%progbits
        .4byte  0x1b
        .2byte  0x2
        .4byte  .Ldebug_info0
        .4byte  0xd0
        .4byte  0x68
        .ascii  "progWord\000"
        .4byte  0x0
        .section        .debug_aranges,"",%progbits
        .4byte  0x1c
        .2byte  0x2
        .4byte  .Ldebug_info0
        .byte   0x4
        .byte   0x0
        .2byte  0x0
        .2byte  0x0
        .4byte  .Ltext0
        .4byte  .Letext0-.Ltext0
        .4byte  0x0
        .4byte  0x0
        .section        .debug_str,"MS",%progbits,1
.LASF5:
        .ascii  "long long int\000"
.LASF7:
        .ascii  "base_address\000"
.LASF12:
        .ascii  "GNU C 4.0.1\000"
.LASF14:
        .ascii  "/home/thomas/work/bugreport\000"
.LASF8:
        .ascii  "address\000"
.LASF4:
        .ascii  "long unsigned int\000"
.LASF6:
        .ascii  "long long unsigned int\000"
.LASF2:
        .ascii  "unsigned char\000"
.LASF9:
        .ascii  "data\000"
.LASF15:
        .ascii  "uint32_t\000"
.LASF13:
        .ascii  "example.c\000"
.LASF3:
        .ascii  "short unsigned int\000"
.LASF16:
        .ascii  "progWord\000"
.LASF11:
        .ascii  "rd_data\000"
.LASF1:
        .ascii  "short int\000"
.LASF10:
        .ascii  "dataPtr\000"
.LASF0:
        .ascii  "char\000"
        .ident  "GCC: (GNU) 4.0.1"




-- 


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

Reply via email to