Hello, I have a question on the use of gcc –O optimization. I have a build which uses the –O optimization. But when I insert a Label (in-line assembly just like __asm ) in my code such as this: HSIT_LABEL(".global BP_**\n BP_**:"); The executable code (.srec) changes. Could you please let me know why this changes the executable code? Could you please let me know which option below is actually causing the labels to change optimization? -falign-loops -fargument-alias -fbranch-count-reg -fcommon -fcprop-registers -fcse-follow-jumps -fdefer-pop -fearly-inlining -feliminate-unused-debug-types -ffunction-cse -fgcse-lm -fguess-branch-probability -fident -fif-conversion -fif-conversion2 -finline-functions-called-once -fipa-pure-const -fipa-reference -fivopts -fkeep-static-consts -fleading-underscore -fmath-errno -fmerge-constants -fmove-loop-invariants -fomit-frame-pointer -foptimize-register-move -fpeephole -freg-struct-return -fregmove -fsched-interblock -fsched-spec -fsched-stalled-insns-dep -fsection-anchors -fshow-column -fsplit-ivs-in-unroller -ftoplevel-reorder -ftrapping-math -ftree-ccp -ftree-ch -ftree-copy-prop -ftree-copyrename -ftree-dce -ftree-dominator-opts -ftree-dse -ftree-fre -ftree-loop-im -ftree-loop-ivcanon -ftree-loop-optimize -ftree-lrs -ftree-salias -ftree-sink -ftree-sra -ftree-ter -ftree-vect-loop-version -funit-at-a-time -fvar-tracking -fverbose-asm -fzero-initialized-in-bss -m32 -maltivec -mbig -mbig-endian -mbss-plt -meabi -mfused-madd -mhard-float -mlongcall -mnew-mnemonics -mno-fp-in-toc -mpowerpc -mpowerpc-gfxopt -msched-prolog -msvr4-struct-return -mupdate Thanks. Best Regards, Sadia Masud UTC Aerospace Systems, Rockford, IL