# Lab 4 - Software Performance 2023 This is Lab 4 of the **Software Performance** course at USI. Go to [this Lab on iCorsi](https://www.icorsi.ch/course/view.php?id=16963). ## Submission Info | Property | Value | |------------|----------| | First Name | Claudio | | Last Name | Maggioni | **NOTE:** the combined PDFs for all CFGs, all combined outputs and all DTs can be found in `test-output/all.cfg.pdf`, `test-output/all.combined.pdf` and `test-output/all.dt.pdf` respectively. ## Submission Checklist Please complete this checklist (turn [ ] into [X]) before you submit: - [x] I completed the above Submission Info - [x] I built the project in IntelliJ (Build > Build Project) - [x] I (re)implemented the ControlFlowGraphBuilder (copy from Lab 3) - [x] I (re)implemented the ControlFlowGraphRenderer (copy from Lab 3) - [x] I implemented the Traversal - [x] I implemented the DominatorAnalyzer - [x] I wrote the source code myself and did not look at the source code of my class mates - [x] I ran all the JUnit tests and verified that they all pass - [x] I manually checked that my implementation is correct by doing this: - [x] I studied the test-input/ExampleClass.java source code - [x] I ran App to produce the dot files (in test-output/) - [x] I ran dot to turn the dot files in test-output into a PDF - [x] I manually verified that the PDF contains a set of pages per method of ExampleClass - [x] I manually verified that the CFGs in the PDFs correspond to the methods' source code - [x] I manually verified that the dominator trees in the PDFs correspond to the method's source code - [x] I committed my changes (at least one commit, but possibly many) - [x] I pushed my commits to GitHub