From: SourceForge.net <no...@so...> - 2006-04-13 18:13:09
|
Bugs item #1469991, was opened at 2006-04-13 11:13 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=1469991&group_id=599 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: msc51(8051) target Group: unreproducable Status: Open Resolution: None Priority: 5 Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: Compiled Code Initial Comment: SDCC --version SDCC : mcs51/gbz80/z80/avr/ds390/pic16/pic14/TININative/xa51/d s400/hc08 2.5.5 #1232 (Mar 29 2006) (MINGW32) I have a simple file setup that looks like this: #include <string.h> #include "SDCCTEST.h" char str[6] = "MAXIM"; bit flag; xdata long lTest1; xdata long lTest2; xdata long lTest3; void main(void){ flag = 0; lTest1 = Num1 + Num2; lTest2 = Num2 + Num3; lTest3 = ((lTest1 + lTest2) / 2); flag = 1; while(1); // program loop } In SDCCTEST.h I have three #defines: #define Num1 0x11111111 #define Num2 0x22222222 #define Num3 0x33333333 If you do the addition on a calculator you get: lTest1 = Num1 + Num2; 0x11111111 + 0x22222222 = 0x33333333 lTest2 = Num2 + Num3; 0x22222222 + 0x33333333 = 0x55555555 lTest3 = ((lTest1 + lTest2) / 2); (0x33333333 + 0x55555555 / 2) 0x88888888 / 2 = 0x44444444 Here is what gets output into the *.asm file ;SDCCTEST.c:16: lTest3 = ((lTest1 + lTest2) / 2); ; genAssign mov dptr,#_lTest3 mov a,#0x44 movx @dptr,a inc dptr ; Peephole 101 removed redundant mov movx @dptr,a inc dptr mov a,#0x44 movx @dptr,a inc dptr mov a,#0xC4 movx @dptr,a In the second to last line why wouldn't that line be #0x44 instead of #0xC4????? I am thinking wrong or what??? You can email me @ bkm...@jl... Thanks ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=1469991&group_id=599 |