@@ -14,35 +14,35 @@ new APIs as soon as possible, which can be done by testing your code with `--dep
14
14
Technically beaking changes (unlikely to affect any users):
15
15
16
16
- Metadata values attached using the ` metadata ` function [ now need to
17
- be] ( https://github.com/maleadt /LLVM.jl/pull/476 ) a subtype of ` MDNode ` . This behavior
17
+ be] ( https://github.com/JuliaLLVM /LLVM.jl/pull/476 ) a subtype of ` MDNode ` . This behavior
18
18
was already expected by LLVM, but only triggered a crash using an assertions build.
19
19
- Creating a ` ThreadSafeModule ` from a ` Module ` [ now
20
- will] ( https://github.com/maleadt /LLVM.jl/pull/474 ) copy the source module into the active
20
+ will] ( https://github.com/JuliaLLVM /LLVM.jl/pull/474 ) copy the source module into the active
21
21
thread-safe context. This is a behavioural change, but is unlikely to affect any users.
22
22
The previous behavior resulted in the wrong context being used, which could lead to
23
23
crashes.
24
24
25
25
Minor changes (breaking changes with deprecations):
26
26
27
27
- Branch instruction predicate getters [ have been
28
- renamed] ( https://github.com/maleadt /LLVM.jl/pull/473 ) from ` predicate_int ` and
28
+ renamed] ( https://github.com/JuliaLLVM /LLVM.jl/pull/473 ) from ` predicate_int ` and
29
29
` predicate_float ` to simply ` predicate ` . The old names are deprecated.
30
30
- Conversion of a ` MDString ` to a Julia string [ is now
31
- implemented] ( https://github.com/maleadt /LLVM.jl/pull/470 ) using the ` convert ` method,
31
+ implemented] ( https://github.com/JuliaLLVM /LLVM.jl/pull/470 ) using the ` convert ` method,
32
32
rather than the ` string ` method. The old method is deprecated.
33
33
- The ` delete! ` and ` unsafe_delete! ` methods [ have been
34
- renamed] ( https://github.com/maleadt /LLVM.jl/pull/467 ) to ` remove! ` and ` erase! ` to more
34
+ renamed] ( https://github.com/JuliaLLVM /LLVM.jl/pull/467 ) to ` remove! ` and ` erase! ` to more
35
35
closely match LLVM's terminology. The old names are deprecated.
36
- - Copy constructors [ have been deprecated] ( https://github.com/maleadt /LLVM.jl/pull/466 ) in
36
+ - Copy constructors [ have been deprecated] ( https://github.com/JuliaLLVM /LLVM.jl/pull/466 ) in
37
37
favor of explicit ` copy ` methods.
38
38
- Several publicly unused APIs that had been deprecated upstream, have been removed:
39
- [ ` GlobalContext ` ] ( https://github.com/maleadt /LLVM.jl/pull/463 ) ,
40
- [ ` ModuleProvider ` ] ( https://github.com/maleadt /LLVM.jl/pull/465 ) ,
41
- [ ` PassRegistry ` ] ( https://github.com/maleadt /LLVM.jl/pull/461 ) .
39
+ [ ` GlobalContext ` ] ( https://github.com/JuliaLLVM /LLVM.jl/pull/463 ) ,
40
+ [ ` ModuleProvider ` ] ( https://github.com/JuliaLLVM /LLVM.jl/pull/465 ) ,
41
+ [ ` PassRegistry ` ] ( https://github.com/JuliaLLVM /LLVM.jl/pull/461 ) .
42
42
43
43
New features:
44
44
45
- - A ` lookup ` function [ has been added] ( https://github.com/maleadt /LLVM.jl/pull/458 ) to
45
+ - A ` lookup ` function [ has been added] ( https://github.com/JuliaLLVM /LLVM.jl/pull/458 ) to
46
46
enable extracting the address of a compiled function from an execution engine. This makes
47
47
it possible to simply ` ccall ` a compiled function without having to deal with
48
48
` GenericValue ` s.
@@ -54,11 +54,11 @@ New features:
54
54
55
55
Major changes:
56
56
57
- - The ` OperandBundle ` API [ was changed] ( https://github.com/maleadt /LLVM.jl/pull/437 ) to the
57
+ - The ` OperandBundle ` API [ was changed] ( https://github.com/JuliaLLVM /LLVM.jl/pull/437 ) to the
58
58
upstream version, replacing ` OperandBundleDef ` and ` OperandBundleUse ` with
59
59
` OperandBundle ` , renaming ` tag_name ` to ` tag ` and removing ` tag_id ` . No deprecations are
60
60
in place for this change.
61
- - The ` SyncScope ` API [ was changed] ( https://github.com/maleadt /LLVM.jl/pull/443 ) to the
61
+ - The ` SyncScope ` API [ was changed] ( https://github.com/JuliaLLVM /LLVM.jl/pull/443 ) to the
62
62
upstream version, switching from string-based synchronization scope names to a
63
63
` SyncScope ` object, while adding ` is_atomic ` check and ` syncscope ` /` syncscope! ` getters
64
64
and setters for atomic instructions. Deprecations are in place for the old API.
@@ -67,9 +67,9 @@ New features:
67
67
68
68
- Support for LLVM 18
69
69
- An alias-analysis pipeline [ can now be
70
- specified] ( https://github.com/maleadt /LLVM.jl/pull/439 ) using the ` NewPMAAManager ` API.
71
- - API wrappers [ now come with] ( https://github.com/maleadt /LLVM.jl/pull/448 ) docstrings.
72
- - Functions [ have been added] ( https://github.com/maleadt /LLVM.jl/pull/447 ) to move between
70
+ specified] ( https://github.com/JuliaLLVM /LLVM.jl/pull/439 ) using the ` NewPMAAManager ` API.
71
+ - API wrappers [ now come with] ( https://github.com/JuliaLLVM /LLVM.jl/pull/448 ) docstrings.
72
+ - Functions [ have been added] ( https://github.com/JuliaLLVM /LLVM.jl/pull/447 ) to move between
73
73
blocks, instructions and functions without having to iterate using the parent.
74
74
75
75
@@ -81,18 +81,18 @@ Minor changes:
81
81
82
82
New features:
83
83
84
- - A [ memory checker] ( https://github.com/maleadt /LLVM.jl/pull/420 ) has been added. Toggling
84
+ - A [ memory checker] ( https://github.com/JuliaLLVM /LLVM.jl/pull/420 ) has been added. Toggling
85
85
the ` memcheck ` preference to ` true ` will enable LLVM.jl to detect missing disposes, use
86
86
after frees, etc.
87
87
- Support for ` atomic_rmw! ` with synchronizatin scopes [ has been
88
- added] ( https://github.com/maleadt /LLVM.jl/pull/431 )
88
+ added] ( https://github.com/JuliaLLVM /LLVM.jl/pull/431 )
89
89
90
90
91
91
## LLVM.jl v8.0
92
92
93
93
Major changes:
94
94
95
- - The NewPM wrappers [ have been overhauled] ( https://github.com/maleadt /LLVM.jl/pull/416 ) to
95
+ - The NewPM wrappers [ have been overhauled] ( https://github.com/JuliaLLVM /LLVM.jl/pull/416 ) to
96
96
be based on the upstream string-based interface, rather than maintaining various API
97
97
extensions to expose the pass manager internals. There are no deprecations in place for
98
98
this change.
@@ -102,7 +102,7 @@ Major changes:
102
102
103
103
Minor changes:
104
104
105
- - Metadata APIs [ have been extended] ( https://github.com/maleadt /LLVM.jl/pull/414 ) to all
105
+ - Metadata APIs [ have been extended] ( https://github.com/JuliaLLVM /LLVM.jl/pull/414 ) to all
106
106
value subtypes, making it possible to attach metadata to functions.
107
107
108
108
@@ -111,13 +111,13 @@ Minor changes:
111
111
Minor changes:
112
112
113
113
- The NewPM internalize pass [ has been
114
- extended] ( https://github.com/maleadt /LLVM.jl/pull/409 ) to support a list of exported
114
+ extended] ( https://github.com/JuliaLLVM /LLVM.jl/pull/409 ) to support a list of exported
115
115
symbols. This makes it possible to switch GPUCompiler.jl to the new pass manager.
116
116
117
117
118
118
## LLVM.jl v7.0
119
119
120
120
Major changes:
121
121
122
- - ` LowerSIMDLoopPass ` [ was switched] ( https://github.com/maleadt /LLVM.jl/pull/398 ) to being a
122
+ - ` LowerSIMDLoopPass ` [ was switched] ( https://github.com/JuliaLLVM /LLVM.jl/pull/398 ) to being a
123
123
loop pass on Julia v1.10. This may require having to use a different pass manager.
0 commit comments