Dear All, I added a new Back-end in the GCC. After configuring GCC for this Back-end, generated assembly code or intermediate code gives some problem. This is a C Program. ----------------------------------------------------------------------- int main(void) { int i,j; j=0; i=8; if(j) goto nitinj; j=i<222; nitinj: return j; } ------------------------------------------------------------------------- This is a part of RTL code. ------------------------------------------------------------------------- (insn 40 39 41 (set (reg/f:SI 0 ret [35]) (reg/f:SI 0 ret [34])) 1 {*movsi_1} (nil) (nil)) (insn 41 40 42 (set (mem:SI (reg/f:SI 0 ret [35]) [0 S4 A32]) (const_int 221 [0xdd])) 1 {*movsi_1} (nil) (nil))(call_insn/u 42 41 44 (set (reg:SI 0 ret) (call (mem:QI (symbol_ref:SI ("__cmpsi2")) [0 S1 A8]) (const_int 8 [0x8]))) 4 {call_value} (nil) (expr_list:REG_EH_REGION (const_int -1 [0xffffffff]) (nil)) (expr_list (clobber (reg/f:SI 10 sp)) (nil))) (insn 44 42 45 (set (reg:SI 0 ret [37]) (reg:SI 0 ret)) 1 {*movsi_1} (nil) (nil)) (insn 45 44 46 (set (cc0) (compare (reg:SI 0 ret [37]) (const_int 1 [0x1]))) 8 {*cmpsi_1} (nil) (nil)) ------------------------------------------------------------------------- My problem is that why there is a call to "__cmpsi2" while there is no such thing in my .md file. The part of the .md which is for `cmp op'. ----------------------------------------------------------------------- ( define_expand "cmpsi" [(set (cc0) (compare (match_operand:SI 0 "general_operand" "") (match_operand:SI 1 "general_operand" "")))] "" "") ( define_insn "*cmpsi_1" [(set (cc0) (compare (match_operand:SI 0 "cmp_dest_op" "")(match_operand:SI 1 "cmp_src_op" "i")))] "" "* toy_cmp_insn (operands[0], operands[1]); ") `cmp_dest_op' checks that operand should be a memory or reg while `cmp_src_op' checks that operand should be a const_int. ----------------------------------------------------------------------- I got some information that this is because of the default library functions provided by GCC as `libgcc1.a'. I don't know how to disable the calling of such function in the assembly code generation process. Please give me some suggestion. Thanks a lot. Nitin --------------------------- Nitin Jain (H-12/#A-415) Computer Science and Engg, IIT BOMBAY, POWAI, MUMBAI 400076 Phone : 4748 (Lab) --------------------------- __________________________________ Do you Yahoo!? New Yahoo! Photos - easier uploading and sharing. http://photos.yahoo.com/