You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Patch and relocate points
* comment out erroneous `@show`
* doc update and `filename` support in `compile`
* Update src/StaticCompiler.jl
Co-authored-by: Julian Samaroo <jpsamaroo@jpsamaroo.me>
* Update README.md
Co-authored-by: Julian Samaroo <jpsamaroo@jpsamaroo.me>
* Update src/StaticCompiler.jl
Co-authored-by: Julian Samaroo <jpsamaroo@jpsamaroo.me>
* Update src/StaticCompiler.jl
Co-authored-by: Julian Samaroo <jpsamaroo@jpsamaroo.me>
* Update src/StaticCompiler.jl
Co-authored-by: Julian Samaroo <jpsamaroo@jpsamaroo.me>
* Update src/StaticCompiler.jl
Co-authored-by: Julian Samaroo <jpsamaroo@jpsamaroo.me>
* Update src/pointer_patching.jl
Co-authored-by: Julian Samaroo <jpsamaroo@jpsamaroo.me>
* Apply suggestions from code review
Co-authored-by: Julian Samaroo <jpsamaroo@jpsamaroo.me>
* reenable blas test
* go back to serialization stdlib
* note on gvs
* try using JITTargetMachine for the dynamic linker
* try running CI on windows
* do some code reorganization
* refine warning
* allow windows failures
* add options to strip the llvm / asm code
* remove `@showln`
* add `pointer_patching_diff` function to quickly see the effect of `relocation_table!`
* improve pointer relocation
* consolidate logic and reduce segfaults during compilation
* remove unnecessary stuff
* don't duplicate global values, switch from Dict to IdDict for reloc
* avoid re-creation of global variables
* more tests
* add dummy test for error handing
* test with ErrorTypes.jl
* bump version
Co-authored-by: Julian Samaroo <jpsamaroo@jpsamaroo.me>
Copy file name to clipboardExpand all lines: README.md
+6-4Lines changed: 6 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -47,7 +47,9 @@ This package uses the [GPUCompiler package](https://github.com/JuliaGPU/GPUCompi
47
47
48
48
## Limitations
49
49
50
-
* No heap allocations (e.g. creating an array or a string) are allowed inside a statically compiled function body. If you try to run such a function, you will get a segfault.
51
-
** It's sometimes possible you won't get a segfault if you define and run the function in the same session, but trying to call the compiled function in a new julia session will definitely segfault if you allocate memory.
52
-
* Doesn't currently work on Windows
53
-
* If you find any other limitations, let us know. There's probably lots.
50
+
* GC-tracked allocations and global variables do work with `compile`, but the way they are implemented is brittle and can be dangerous. Allocate with care.
51
+
* GC-tracked allocations and global varaibles do *not* work with `compile_executable` (yet).
52
+
* Type unstable code is not yet supported.
53
+
* Throwing errors is not currently supported. In the meantime, consider wrapping possible errors with [ErrorTypes.jl](https://github.com/jakobnissen/ErrorTypes.jl)
54
+
* Doesn't currently work on Windows.
55
+
* If you find any other limitations, let us know. There's probably lots.
0 commit comments