> -----Original Message----- > From: > avr-gcc-list-bounces+eweddington=cso.atmel....@nongnu.org > [mailto:avr-gcc-list-bounces+eweddington=cso.atmel....@nongnu. > org] On Behalf Of David VanHorn > Sent: Tuesday, March 10, 2009 10:01 AM > To: AVR-GCC > Subject: [avr-gcc-list] Wierd Calls. > > I'm probably doing something wrong again.. > > I've seen this on and off, as I'm stepping through the > compiled code in the asm window. > I will have a call that makes no sense to me, sort of > randomly appearing as I change the code, and dissapearing for > no obvious reason. It's always to the lcd_init routine, even > though this code has nothing to do with the LCD... > > Below is where it's currently happening. > This SHOULD just load BIN with a value between 0 and 31. > It has to pull data from Raw_Data[0] according to the value > of Raw_Data_Index which will be between 0 and 511. > Raw_Samples is 512, and Sample_Bins is 32. > > 1051: Bin = (Raw_Data[0][Raw_Data_Index]) / (Raw_Samples > / Sample_Bins); // Find the bin for the old raw data > +0000031B: 90C00076 LDS R12,0x0076 Load direct > from data space > +0000031D: 90D00077 LDS R13,0x0077 Load direct > from data space > +0000031F: 01F6 MOVW R30,R12 Copy register pair > +00000320: 53EC SUBI R30,0x3C Subtract immediate > +00000321: 4FFF SBCI R31,0xFF Subtract > immediate with carry > +00000322: 8180 LDD R24,Z+0 Load > indirect with displacement > +00000323: E06F LDI R22,0x0F Load immediate > +00000324: 940E062C CALL 0x0000062C Call subroutine > +00000326: 2FA8 MOV R26,R24 Copy register > +00000327: E0B0 LDI R27,0x00 Load immediate
If I had to guess, I would guess that this is a word address / byte address issue and what it is really calling is math subroutines in libgcc. Use the -save-temps switch and look at the <file>.s filt that is generated to see what the compiler is outputting for the section of code above. That should shed some light on which function it thinks its calling. _______________________________________________ AVR-GCC-list mailing list AVR-GCC-list@nongnu.org http://lists.nongnu.org/mailman/listinfo/avr-gcc-list