[llvm] r206732 - Implement builtins for safe division: safe.sdiv.iN, safe.udiv.iN, safe.srem.iN,
Eric Christopher
echristo at gmail.com
Wed Apr 23 13:50:20 PDT 2014
On Tue, Apr 22, 2014 at 6:45 PM, Andrew Trick <atrick at apple.com> wrote:
>
> On Apr 22, 2014, at 8:19 AM, Eric Christopher <echristo at gmail.com> wrote:
>
> One of Michael’s early implementations worked completely within the
> SelectionDAG. We could share that patch if it’s interesting. The goal was to
> mimic the rest of the llvm.arith.with.overflow intrinsics, including
> lowering them through the same codegen mechanism.
>
>
> Right. Those are needed for correct behavior. This is not so it
> doesn't seem like a good analogy here.
>
>
> I think the new division intrinsics are needed for correct behavior, as much
> as the other overflow intrinsics are. The only difference I can see is that
> architectures typically support reporting overflow on integer add/mul in the
> form of flags. Whereas with division we need to emit some code to do the
> checks.
>
Can you show some aspect of any standardized language that can't be
handled otherwise?
Also, I've not seen the mail you were mentioning on llvm-dev?
-eric
More information about the llvm-commits
mailing list