[llvm-dev] isHardwareLoopProfitable() called with empty assumption cache in hwloops pass (original) (raw)
Janek Van Oirschot via llvm-dev llvm-dev at lists.llvm.org
Wed Mar 24 10:27:24 PDT 2021
- Previous message: [llvm-dev] [RFC] Adding range metadata to array subscripts.
- Next message: [llvm-dev] isHardwareLoopProfitable() called with empty assumption cache in hwloops pass
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hey all,
It seems that when HardwareLoops calls the isHardwareLoopProfitable TTI hook, it never has a populated AssumptionCache. Some debugging revealed that HardwareLoops runs during the PreISel phase for ARM and PPC. However, the CodeGenPrepare pass runs before PreISel and removes all assumes meaning that the AssumptionCache in HardwareLoops will end up empty.
From what I gather (and let me know if I'm wrong), only PPC uses the AssumptionCache in isHardwareLoopProfitable but only to aid in some cost analysis. I was wondering whether it's intended behaviour to have an empty AssumptionCache during HardwareLoops? I ask because I was looking into using assumes to persuade HardwareLoops into emitting hardware intrinsics for our (downstream) target.
Kind regards, Janek van Oirschot
-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20210324/9833beab/attachment.html>
- Previous message: [llvm-dev] [RFC] Adding range metadata to array subscripts.
- Next message: [llvm-dev] isHardwareLoopProfitable() called with empty assumption cache in hwloops pass
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]