Skip to content

Conversation

@montrie
Copy link
Contributor

@montrie montrie commented Jan 27, 2023

This PR is a cleaned up version of PR #964

As discussed, I created a new PR containing only the relevant Iter related changes. This PR is now based on the merged flambda PR #928.
In particular, it is based on the commit https://github.com/goblint/analyzer/commit/ab2141a00b577cb20d354878a315a2e27e5074c6
.
All relevant information can be found in the comments of #964.

@sim642 sim642 added student-job performance Analysis time, memory usage setup Dependencies, CI, releasing labels Jan 27, 2023
@sim642 sim642 self-requested a review January 27, 2023 12:40
@sim642
Copy link
Member

sim642 commented Jan 27, 2023

If this subsumes #964, then feel free to close that.

Is there a plan to do a similar rebase with #965?

@montrie montrie mentioned this pull request Jan 28, 2023
@montrie
Copy link
Contributor Author

montrie commented Jan 28, 2023

Yes, there should be a similar rebase of #965 within the next days.

@KhalilCK
Copy link
Contributor

Yes,#975 is the rebase of #965

@michael-schwarz michael-schwarz self-requested a review January 28, 2023 18:42
Copy link
Member

@michael-schwarz michael-schwarz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR! As discussed on the other PR, we will likely merge the alternative #975 though :)

module WeakUpdates = BaseDomain.WeakUpdates
module BaseComponents = BaseDomain.BaseComponents

open Iter
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As far as I can see, this open is unused?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, that is correct, this open isn't needed.

in
let alen = List.filter_map (fun v -> lenOf v.vtype) (AD.to_var_may a) in
let d = List.fold_left ID.join (ID.bot_of (Cilfacade.ptrdiff_ikind ())) (List.map (ID.of_int (Cilfacade.ptrdiff_ikind ()) %BI.of_int) (slen @ alen)) in
let d = Iter.((Iter.map String.length (Iter.of_list @@ AD.to_string a)) <+> (Iter.filter_map (fun v -> lenOf v.vtype) (Iter.of_list @@ AD.to_var_may a)) (*<- equal to slen @ alen *)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you already have Iter.(...) outside, you do not need it inside again.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right, that somehow slipped my mind. Should I push a fix for that even though the code deadline has passed?

@michael-schwarz
Copy link
Member

As we will not move ahead with Iter, closing this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

performance Analysis time, memory usage setup Dependencies, CI, releasing student-job

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants