"Mohamed Shafi" <[EMAIL PROTECTED]> writes: > So when i looked into the .md file i saw no patterns with DI machine > mode ,used for long long(am i right?), execpt > > define_insn "adddi3" and define_insn "subdi3" > > The .md file says that this is to prevent gcc from synthesising it, > though i didnt understand what that means.
If there is no adddi3 pattern, then gcc will handle 64-bit addition by doing 32-bit additions, and similarly for 64-bit subtraction. Putting an adddi3 pattern in the MD file lets the backend specify how to do 64-bit addition. The backend can do it more efficiently than the generic approach if the target provides an add-with-carry instruction. I don't see how we can say anything else useful since we don't know anything about how your examples are failing to compile. Ian