[PATCH][ARM]Fix urem/srem of i64 for aeabi target (PR 17881)

Tim Northover t.p.northover at gmail.com
Mon Nov 11 14:03:40 PST 2013


Hi Weiming,

> Please help to review the patch that addresses i64 mod operation for ARM
> aeabi.

Can this be done in ARM's ISelLowering? The problem is that ExpandRem
is *only* the correct implementation for the ARM-specific __aeabi_*
functions. The more generic GNU-style calls have a different
prototype:

   int64_t __divmoddi4(int64_t l, int64_t r, int64_t *rem);

As it stands, any other target deciding to Expand divrem is likely to
get a nasty shock.

Cheers.

Tim.



More information about the llvm-commits mailing list