Releases: apojomovsky/epic-cc
Release list
epic-cc rolling 0.0.0-master-$sha
Rolling build of the epic-cc Linux bundle at 0.0.0-master-23858220bc53a997222d7bb5ba68b938449c38de.
This is a prerelease published on every push to master so downstream
CI can pin a compiler and run it without building clang. Pin this
tag (ci-23858220bc53a997222d7bb5ba68b938449c38de) to get a reproducible compiler.
Run it as-is (the bundle ships its own clang):
unzip epic-cc-0.0.0-master-23858220bc53a997222d7bb5ba68b938449c38de-x86_64-linux.zip
./epic-cc-0.0.0-master-23858220bc53a997222d7bb5ba68b938449c38de-x86_64-linux/epic-cc --target p16f887 app.c -o app.hexThe binary identifies itself with --version (epic-cc 0.0.0-master-23858220bc53a997222d7bb5ba68b938449c38de).
Requires Ubuntu 22.04 / Debian 12 or newer on x86_64.
Checksums
0602d80bd93c6501f65c57b48e3b0c3c207ffbec4600be9ed6ea9a46d2d6a6a0 epic-cc-0.0.0-master-23858220bc53a997222d7bb5ba68b938449c38de-x86_64-linux.zip
epic-cc rolling 0.0.0-master-$sha
Rolling build of the epic-cc Linux bundle at 0.0.0-master-1290dd57a058c3402736987c32f276fe3f02a86b.
This is a prerelease published on every push to master so downstream
CI can pin a compiler and run it without building clang. Pin this
tag (ci-1290dd57a058c3402736987c32f276fe3f02a86b) to get a reproducible compiler.
Run it as-is (the bundle ships its own clang):
unzip epic-cc-0.0.0-master-1290dd57a058c3402736987c32f276fe3f02a86b-x86_64-linux.zip
./epic-cc-0.0.0-master-1290dd57a058c3402736987c32f276fe3f02a86b-x86_64-linux/epic-cc --target p16f887 app.c -o app.hexThe binary identifies itself with --version (epic-cc 0.0.0-master-1290dd57a058c3402736987c32f276fe3f02a86b).
Requires Ubuntu 22.04 / Debian 12 or newer on x86_64.
Checksums
1d990c3a0e24711bc3d05c2e6e370f5901a055ade1bbdac46642703ad7b3fd81 epic-cc-0.0.0-master-1290dd57a058c3402736987c32f276fe3f02a86b-x86_64-linux.zip
epic-cc rolling 0.0.0-master-$sha
Rolling build of the epic-cc Linux bundle at 0.0.0-master-b69e02764da446543a653179bd6e025170fc58de.
This is a prerelease published on every push to master so downstream
CI can pin a compiler and run it without building clang. Pin this
tag (ci-b69e02764da446543a653179bd6e025170fc58de) to get a reproducible compiler.
Run it as-is (the bundle ships its own clang):
unzip epic-cc-0.0.0-master-b69e02764da446543a653179bd6e025170fc58de-x86_64-linux.zip
./epic-cc-0.0.0-master-b69e02764da446543a653179bd6e025170fc58de-x86_64-linux/epic-cc --target p16f887 app.c -o app.hexThe binary identifies itself with --version (epic-cc 0.0.0-master-b69e02764da446543a653179bd6e025170fc58de).
Requires Ubuntu 22.04 / Debian 12 or newer on x86_64.
Checksums
88972aed5b217415c16741c5553afb1857b0e277d974d351d33ef0eb407c3c45 epic-cc-0.0.0-master-b69e02764da446543a653179bd6e025170fc58de-x86_64-linux.zip
epic-cc rolling 0.0.0-master-$sha
Rolling build of the epic-cc Linux bundle at 0.0.0-master-acf3ece4bae026625a791b18f4d86d6002f40606.
This is a prerelease published on every push to master so downstream
CI can pin a compiler and run it without building clang. Pin this
tag (ci-acf3ece4bae026625a791b18f4d86d6002f40606) to get a reproducible compiler.
Run it as-is (the bundle ships its own clang):
unzip epic-cc-0.0.0-master-acf3ece4bae026625a791b18f4d86d6002f40606-x86_64-linux.zip
./epic-cc-0.0.0-master-acf3ece4bae026625a791b18f4d86d6002f40606-x86_64-linux/epic-cc --target p16f887 app.c -o app.hexThe binary identifies itself with --version (epic-cc 0.0.0-master-acf3ece4bae026625a791b18f4d86d6002f40606).
Requires Ubuntu 22.04 / Debian 12 or newer on x86_64.
Checksums
041fa43beb0fdd2931d59ff1fc2dbbd9ae13778507133edf7ac18cb44b3d721e epic-cc-0.0.0-master-acf3ece4bae026625a791b18f4d86d6002f40606-x86_64-linux.zip
epic-cc rolling 0.0.0-master-$sha
Rolling build of the epic-cc Linux bundle at 0.0.0-master-779b2d3af7652087095431a8cf36919bcfb560d7.
This is a prerelease published on every push to master so downstream
CI can pin a compiler and run it without building clang. Pin this
tag (ci-779b2d3af7652087095431a8cf36919bcfb560d7) to get a reproducible compiler.
Run it as-is (the bundle ships its own clang):
unzip epic-cc-0.0.0-master-779b2d3af7652087095431a8cf36919bcfb560d7-x86_64-linux.zip
./epic-cc-0.0.0-master-779b2d3af7652087095431a8cf36919bcfb560d7-x86_64-linux/epic-cc --target p16f887 app.c -o app.hexThe binary identifies itself with --version (epic-cc 0.0.0-master-779b2d3af7652087095431a8cf36919bcfb560d7).
Requires Ubuntu 22.04 / Debian 12 or newer on x86_64.
Checksums
0e47deaa75cc5d7c89c4b1504df299e96f0c8739af8f272394b91b229ec2cc6d epic-cc-0.0.0-master-779b2d3af7652087095431a8cf36919bcfb560d7-x86_64-linux.zip
epic-cc rolling 0.0.0-master-$sha
Rolling build of the epic-cc Linux bundle at 0.0.0-master-5330d574eea502259c5ddc84dadbecd387d64655.
This is a prerelease published on every push to master so downstream
CI can pin a compiler and run it without building clang. Pin this
tag (ci-5330d574eea502259c5ddc84dadbecd387d64655) to get a reproducible compiler.
Run it as-is (the bundle ships its own clang):
unzip epic-cc-0.0.0-master-5330d574eea502259c5ddc84dadbecd387d64655-x86_64-linux.zip
./epic-cc-0.0.0-master-5330d574eea502259c5ddc84dadbecd387d64655-x86_64-linux/epic-cc --target p16f887 app.c -o app.hexThe binary identifies itself with --version (epic-cc 0.0.0-master-5330d574eea502259c5ddc84dadbecd387d64655).
Requires Ubuntu 22.04 / Debian 12 or newer on x86_64.
Checksums
687dcc4db59c7c89411b5837953fe4f36f90dfb46f9301adfd6058112325b49d epic-cc-0.0.0-master-5330d574eea502259c5ddc84dadbecd387d64655-x86_64-linux.zip
epic-cc rolling 0.0.0-master-$sha
Rolling build of the epic-cc Linux bundle at 0.0.0-master-06f02fa4a5ecc4f15c3a2287c666ff51004dfa9f.
This is a prerelease published on every push to master so downstream
CI can pin a compiler and run it without building clang. Pin this
tag (ci-06f02fa4a5ecc4f15c3a2287c666ff51004dfa9f) to get a reproducible compiler.
Run it as-is (the bundle ships its own clang):
unzip epic-cc-0.0.0-master-06f02fa4a5ecc4f15c3a2287c666ff51004dfa9f-x86_64-linux.zip
./epic-cc-0.0.0-master-06f02fa4a5ecc4f15c3a2287c666ff51004dfa9f-x86_64-linux/epic-cc --target p16f887 app.c -o app.hexThe binary identifies itself with --version (epic-cc 0.0.0-master-06f02fa4a5ecc4f15c3a2287c666ff51004dfa9f).
Requires Ubuntu 22.04 / Debian 12 or newer on x86_64.
Checksums
c05f37e0f6c09066ba27b603ab3d0555506a476a3c841243afe12432f9627d98 epic-cc-0.0.0-master-06f02fa4a5ecc4f15c3a2287c666ff51004dfa9f-x86_64-linux.zip
epic-cc 0.1.0
What's Changed
- fix(isel): 256-align single-entry const tables that cross their window by @apojomovsky in #141
- feat(isel): support cross-context stored callbacks by @apojomovsky in #142
- docs(31): record the epic-math C-path measurement decision by @apojomovsky in #146
- docs(31): record the epic-serial put API decision (#91) by @apojomovsky in #150
- hal-pic16 slice e2e; arity-filter indirect calls; post-banking const window by @apojomovsky in #153
- feat(driver): size and map reporting by @apojomovsky in #156
- fix(alloc): correct the size report's bank counts and ISR fixed region by @apojomovsky in #157
- docs: rename PlatformIO platform to epic8 in doc 31 by @apojomovsky in #158
- fix(isel): measure the const-section start at the assembler's final position by @apojomovsky in #159
- fix(irparse): dispatch folded GEP and ptrtoint in phi and binop operands by @apojomovsky in #162
- fix(driver): ship a freestanding stdlib.h carrying size_t by @apojomovsky in #167
- feat(driver): predefine the XC8 toolchain and part macros by @apojomovsky in #168
- fix(irparse): resolve globals whose types contain unions by @apojomovsky in #169
- fix(driver,irparse): pack PIC18 structs to the XC8 byte-aligned record layout by @apojomovsky in #170
- docs(31): record the HAL-3 close-out and resolve the 877A RAM headroom question by @apojomovsky in #171
- docs(31): record the epic-hal#97 literal printf shim and staged put_str by @apojomovsky in #174
- feat(diagnostics): source-accurate C locations for backend panics by @apojomovsky in #176
- fix(irparse): handle local array alloca [N x T] via ty_size_align by @apojomovsky in #177
- fix(legalize): lower llvm.fshl/fshr.i8/i16/i32 (LFSR rotate) by @apojomovsky in #178
- fix(isel): materialize const string literals for pointer call args by @apojomovsky in #179
- fix(isel,driver): restore master red for cb_dispatch, cc2 and str_literal by @apojomovsky in #181
- fix(isel-pic18): handle i8 to i1 trunc via masked byte copy by @apojomovsky in #180
- ci(rolling-release): checkout the repo in the publish job by @apojomovsky in #182
- fix(alloc): overlay locals by liveness within a frame by @apojomovsky in #184
- fix(iselcore,isel,isel-pic18,alloc): seed non-folding pointer selects as indirect slots by @apojomovsky in #185
- test(driver): e2e for arity-filtered indirect call sites by @apojomovsky in #186
- feat(irparse,isel,isel-pic18,asm,legalize): decode const structs with function-pointer fields by @apojomovsky in #187
- fix(isel,isel-pic18): pass runtime pointer call args and materialize data-global addresses by @apojomovsky in #188
- fix(irparse,isel): lower i64 aggregate struct copies as byte copies by @apojomovsky in #189
- fix(sim): land direct writes to banked SFR windows at the physical address by @apojomovsky in #190
- test(isel): pin the config table crossing its 256-byte window by @apojomovsky in #191
- fix(irparse,iselcore): unblock full-example codegen (inttoptr comma, load-ptr seeding) by @apojomovsky in #192
- fix(pic18): unblock the epic-sdcard/epic-settings PIC18 slice (isel-pic18 gaps) by @apojomovsky in #194
- feat: variadic printf/stdio path (epic-cc#131) by @apojomovsky in #195
- fix(driver,irparse,isel,isel-pic18): whole-program IR cleanup closes the epic-encoder codegen-density gap by @apojomovsky in #198
- fix(driver): base need_stdio/need_string on clang's dependency output, not raw source text by @apojomovsky in #199
- test(driver): add a flash/RAM size-regression suite by @apojomovsky in #201
- docs(driver): correct the XC8 optimization-tier caveat by @apojomovsky in #202
- fix(driver): always-inline single-call-site functions into ordinary callers by @apojomovsky in #208
- fix(docker): ship opt in the release bundles by @apojomovsky in #212
- feat(banking): elide a label's redundant BANKSEL when every path agrees by @apojomovsky in #213
- fix(ci): authenticate the epic-tasks checkout for prose lint by @apojomovsky in #216
- fix(isel): elide a redundant store+immediate-reload of an SSA value in W by @apojomovsky in #215
Full Changelog: v0.0.3...v0.1.0
epic-cc rolling 0.0.0-master-$sha
Rolling build of the epic-cc Linux bundle at 0.0.0-master-c1402b9f74371e73f941abe76cbd615c80317ad4.
This is a prerelease published on every push to master so downstream
CI can pin a compiler and run it without building clang. Pin this
tag (ci-c1402b9f74371e73f941abe76cbd615c80317ad4) to get a reproducible compiler.
Run it as-is (the bundle ships its own clang):
unzip epic-cc-0.0.0-master-c1402b9f74371e73f941abe76cbd615c80317ad4-x86_64-linux.zip
./epic-cc-0.0.0-master-c1402b9f74371e73f941abe76cbd615c80317ad4-x86_64-linux/epic-cc --target p16f887 app.c -o app.hexThe binary identifies itself with --version (epic-cc 0.0.0-master-c1402b9f74371e73f941abe76cbd615c80317ad4).
Requires Ubuntu 22.04 / Debian 12 or newer on x86_64.
Checksums
97ebbc0ff918b6a48eb5b491ee266eb2213879de9a8ea16f3480b186a83d95bb epic-cc-0.0.0-master-c1402b9f74371e73f941abe76cbd615c80317ad4-x86_64-linux.zip
epic-cc rolling 0.0.0-master-$sha
Rolling build of the epic-cc Linux bundle at 0.0.0-master-324fee182bb4c57ea3ccc2b9c01908ad9f22f1ab.
This is a prerelease published on every push to master so downstream
CI can pin a compiler and run it without building clang. Pin this
tag (ci-324fee182bb4c57ea3ccc2b9c01908ad9f22f1ab) to get a reproducible compiler.
Run it as-is (the bundle ships its own clang):
unzip epic-cc-0.0.0-master-324fee182bb4c57ea3ccc2b9c01908ad9f22f1ab-x86_64-linux.zip
./epic-cc-0.0.0-master-324fee182bb4c57ea3ccc2b9c01908ad9f22f1ab-x86_64-linux/epic-cc --target p16f887 app.c -o app.hexThe binary identifies itself with --version (epic-cc 0.0.0-master-324fee182bb4c57ea3ccc2b9c01908ad9f22f1ab).
Requires Ubuntu 22.04 / Debian 12 or newer on x86_64.
Checksums
2aa278554faee960fa9862e3442479e2ca669bab34d0af4badc57002a7317640 epic-cc-0.0.0-master-324fee182bb4c57ea3ccc2b9c01908ad9f22f1ab-x86_64-linux.zip