Lauri Vasama
8e72ad8e48
Improve Clift module verification
2026-04-08 11:12:41 +03:00
Lauri Vasama
007ae24bb0
Simplify Clift expression pattern definitions
2026-04-08 11:12:41 +03:00
Lauri Vasama
03c9b2288f
Simplify Clift expression op definitions
2026-04-08 11:12:41 +03:00
Lauri Vasama
a37f3195d9
Homogenize static assertions in primitive-types.h
2026-04-08 11:12:41 +03:00
Lauri Vasama
b062b23ad6
Include stddef.h in primitive-types.h
2026-04-08 11:12:41 +03:00
Lauri Vasama
c0ca9222ce
Fix Clift immediate emission
2026-04-08 11:12:41 +03:00
Lauri Vasama
90658bbbed
Change default C target size of long
...
Currently there is only a single default target used for all C emission.
However, the emitted code is actually compiled using multiple
implementations (32-bit and 64-bit targets), some of which use a 32-bit
wide long. This causes integer literals to be emitted with wrong sizes
on those targets. This change forces all 64-bit literals to be emitted
using long long, which is 64 bits wide in all relevant implementations.
2026-04-08 11:12:41 +03:00
Lauri Vasama
fae3bb5788
Remove unnecessary Clift operand type constraints
2026-04-08 11:12:41 +03:00
Lauri Vasama
71f1fa128a
Remove unnecessary function type verification
2026-04-08 11:12:41 +03:00
Lauri Vasama
4e4d3bab46
Remove namespace mlir using directives
2026-04-08 11:12:41 +03:00
Lauri Vasama
00e9ed8c5d
Remove unnecessary Clift unit test
2026-04-08 11:12:41 +03:00
Lauri Vasama
c0b774369b
Remove bad comment in CliftOpInterfaces.cpp
2026-04-08 11:12:41 +03:00
Lauri Vasama
7b25803333
Remove unused BasicStatementOp default argument
2026-04-08 11:12:41 +03:00
Lauri Vasama
dda0ef6292
Remove unused Clift_AnyLabelType constraint
2026-04-08 11:12:41 +03:00
Lauri Vasama
3b731330b9
Fix getPointeeType expression rewrite helper
2026-04-08 11:12:41 +03:00
Lauri Vasama
9e71f608b7
Fix Clift AliasableType description
2026-04-08 11:12:41 +03:00
Lauri Vasama
de0e59b188
Move FunctionOp arg attr verify to model verify
2026-04-08 11:12:41 +03:00
Alessandro Di Federico
f75a122400
Merge branch 'feature/pypeline-integrate-ui'
2026-03-31 17:01:18 +02:00
Giacomo Vercesi
2e6193e77f
test_pypeline_daemon: fix flaky SIGSEGV
...
Avoid triggering a flaky SIGSEGV caused by running the asyncio event
loop in a thread. Switch to using `Process` which avoids the issue
altogether.
2026-03-31 17:00:49 +02:00
Giacomo Vercesi
b2293fec30
pypeline: fix Pipeline.run_analysis_list
...
Fix the `run_analysis_list` method as it had an incorrect way of
computing the overall list of invalidated artifacts.
2026-03-31 17:00:49 +02:00
Giacomo Vercesi
a904f356a4
pypeline-daemon: clean up websocket code
...
Clean up the code related to the handling of websockets and allow the
daemon to be terminated gracefully without any error messages.
2026-03-31 17:00:49 +02:00
Giacomo Vercesi
a886c0509f
pypeline: fix savepoint_id_to_artifact
2026-03-31 17:00:49 +02:00
Giacomo Vercesi
fd95c7704e
pypeline: expose artifact's pipe dependencies
...
Add an additional piece of metadata that states which pipes are used to
compute a specific artifact. This can be used to derive which
configuration options influence the creation of an artifact.
2026-03-31 17:00:49 +02:00
Giacomo Vercesi
9b68cf4a39
pypeline-daemon: rework /artifact endpoint
...
Rework the artifact endpoint, making it similar to the CLI invocation.
It now works on a single artifact and can be made to return both `json`
and `tar` as formats.
2026-03-31 17:00:49 +02:00
Giacomo Vercesi
20059b5f3a
pypeline: make Container.serialize selective
...
Change the `Container.serialize` interface so that it is possible to
supply a list of objects that will be serialized instead of all the ones
in the container.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
644b71b319
pypeline: add additional artifact PTML metadata
...
Add two additional fields to `Artifact`: `defined_locations` and
`preferred_artifacts`. These are pieces of metadata that allow
navigation between multiple PTML-enabled documents.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
b9051e494b
pipeline: add missing cross-relations artifact
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
b40fec2270
Add LLMRename analysis to pypeline
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
63a11d0c63
pypeline: add Analysis.is_available
...
Add a method to the `Analysis` interface which allows an analysis to
report if it is available for execution.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
7a152425ca
pypeline: add filename to artifact
...
Add a meta-information field to the artifact that adds an hint of what
filename a single object of an artifact should be represented in a
filesystem.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
4c6436f7b2
pypeline: introduce artifact category
...
Add categories in the pipeline, allow an artifact to have a category
specified which allows it to be shown or hidden by default. Adapt the
CLI tools to hide artifacts of the category that don't
`show_by_default=True`.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
39f1a9c3a9
pypeline: drop underscores from pipeline yaml
...
Remove the only instance of underscores in the pipeline yaml from the
use of `analysis_lists`. Substitute it with `analysis-list`.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
fc9193a0a8
pypeline: convert pipeline parser to class
...
Since most functions in `pipeline_parser.py` had a lot of redundancy in
the parameters passed, convert all of them to be part of a
`PipelineParser` class which stores all the variables.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
550ac7b700
pypeline-daemon: add put-file endpoint
...
Add an endpoint to the daemon that allows adding a file to the file
storage.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
6dc053e55c
pypeline-daemon: rework error propagation
...
Rework how errors are propagated from the daemon code to the HTTP
client, creating an exception hierarchy to handle the most common
cases.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
14d95a924d
pypeline: rework fields in pipeline metadata
...
Rework which information is transmitted in the pipeline metadata,
avoiding redundancy and moving some information there instead of
returning it every time a request is made.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
a13cffab19
pypeline: rename pipeline metadata schema file
...
Rename the schema that describes the metadata of the pipeline from
`web_schema.yml` to `pipeline-description-schema.yml`.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
c53e615fa0
Cleanup pypeline code
...
Remove some cruft and apply trivial changes to the existing pypeline
code, especially on the daemon side.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
773245b893
pypeline/cli: use dataclass for ctx.obj
...
Add typing to the `ctx.obj` object used to store pypeline-specific data
while parsing the command-line in click.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
a746d5afc3
mass-testing-report: fix bugged formatTime
...
The `formatTime` function was bugged, returning invalidly formatted
strings when the second components was less than 10. Rework it to emit
proper formatting.
2026-03-31 17:00:48 +02:00
Giacomo Vercesi
36b7f39606
mkdocs: suppress warning message
...
Suppress the warning message generated by `mkdocs-material` in relation
to the mkdocs 2.0 upgrade.
2026-03-31 17:00:48 +02:00
Pietro Fezzardi
ef63ea209f
Merge branch 'feature/emit-pointer-subscript'
2026-03-31 09:45:59 +02:00
Andrea Gussoni
30a1396a64
EmitFieldAccesses: typedef pointer as array tests
2026-03-30 16:03:37 +02:00
Andrea Gussoni
fab35aaa24
EmitFieldAccesses: unwrap typedef in subscript
...
Use a `bitcast` to unwrap a `typedef` passed as `Pointer` operand to a
`subscript`, which requires it to be a raw `PointerType`.
2026-03-30 16:03:37 +02:00
Andrea Gussoni
4c27971ed8
EmitFieldAccesses: pointer as array tests
2026-03-30 16:03:37 +02:00
Andrea Gussoni
82945de055
EmitFieldAccesses: support pointer as array
...
Introduce the support to decouple the `BaseType` from `BasePointer`
pointee type.
This enable us to wrap pointee typees into an implicit array. This
enables pointer arithmetic rewriting of `*(p + i)` as `p[i]`.
2026-03-30 16:03:37 +02:00
Pietro Fezzardi
394e81001e
Merge branch 'feature/clift-headers-hotfixes'
2026-03-27 14:55:31 +01:00
Ivan Krysak
1b689079d1
Clifter: enforce lambda captures
2026-03-27 14:11:04 +01:00
Lauri Vasama
9d58a4ab9d
Clifter: make a warning louder and expand it
2026-03-27 14:10:17 +01:00
Ivan Krysak
c354642902
Clifter: fix a newly introduced bug
...
This fixes the invalidation problem introduced by reading attributes
in the scope whose execution order depends on the function processing
order.
2026-03-27 12:27:26 +00:00