[cfe-dev] GSoC 2018

Dominic Chen via cfe-dev cfe-dev at lists.llvm.org
Sun Mar 11 12:44:55 PDT 2018


On 3/11/2018 3:27 PM, Mikhail Ramalho via cfe-dev wrote:
> 3. This is a list of the TODOs in Z3ConstraintManager, from more
> important to less important, in my opinion. I just want to know if the
> analyzer's developers (and the project mentor) agree with this list,
> as it might go into my proposal:
I don't think you need to worry about any of these. There are a few
bugfixes for Z3ConstraintManager that have been pending in D28955 and
D35450, but I don't recall if the bugs are even currently reachable.
>
> 3.1. Don't assume nearest ties to even rounding mode: currently, only
> rounding to even is supported, even if the code changes the rounding
> mode using fesetround.
This is specific to floating-point support, which requires D28954.
>
> 3.2. Don't add all the constraints, only the relevant ones: adding
> unnecessary constraints will slowdown the solver.
> 3.3. Refactor doTypeConversion to use built-in conversion functions
> (Refactor to Sema::FindCompositePointerType(), and
> Sema::CheckCompareOperands(); Refine behavior for invalid type casts)
> 3.4. Refactor doIntTypeConversion to use Sema::handleIntegerConversion()
> 3.5. Refactor doFloatTypeConversion to use Sema::handleFloatConversion()
>
> I bundled this together because, although the conversion seems
> incomplete (based on the comments), it's about removing duplicated code.
>
> 3.6. Refactor getAPSIntType(const llvm::APSInt &Int) const to put
> elsewhere.
These are mostly large refactors that would involve other parts of Clang.

Dominic



More information about the cfe-dev mailing list