Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding new target for pca10056: s140v6-uf2 #3764

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
337 commits
Select commit Hold shift + click to select a range
c192c73
targets: bump cortex-m-qemu default stack size
dgryski Mar 1, 2023
2de64d3
compiler, reflect: add Type.PkgPath
dgryski Mar 2, 2023
6a45b73
compiler, reflect: replace package and name length with null-byte ter…
dgryski Mar 3, 2023
51c1579
machine/samd51: implement Flash interface
deadprogram Mar 3, 2023
0bc1973
machine/samd51: disable/restore Flash cache on write/erase
deadprogram Mar 8, 2023
7706c41
Added missing TCPAddr and UDPAddr implementations to the net package
waj334 Feb 5, 2023
4716298
os,syscall: Stat_t timespec fields are Atimespec on darwin
dgryski Mar 3, 2023
cf4a6d3
syscall: add Timespec.Unix() for wasi.
dgryski Mar 3, 2023
a608476
syscall: remove misleading comment about Stat_t fields
dgryski Mar 5, 2023
69e5c50
reflect: add support for remaining map types
dgryski Mar 4, 2023
d610322
wioterminal: fix pin definition of BCM13
sago35 Mar 11, 2023
08cf2b2
machine/rp2040: change uart to allow for a single pin
sago35 Mar 11, 2023
faa449a
arm: enable functions in RAM for go & cgo
kenbell Jan 13, 2023
60366ad
machine/rp2040: implement Flash interface
deadprogram Jan 11, 2023
5db83f1
machine/flash: refactor to keep use of pure offset relative to start
deadprogram Mar 11, 2023
e6580bf
machine/rp2040: correct Flash implementation
deadprogram Mar 11, 2023
0e94553
builder: add test to check for changes in binary size
aykevl Sep 30, 2022
a52cad3
reflect: fix Addr() indirect value/flags and add tests.
dgryski Mar 13, 2023
fb394c7
reflect: add UnsafeAddr()
dgryski Mar 10, 2023
3b27638
reflect: add stubs for Method(), CanConvert(), ArrayOf()
dgryski Mar 10, 2023
04412cb
reflect: add stub for StructOf()
dgryski Mar 11, 2023
f42d8b3
debug: stub SetGCPercent()
dgryski Mar 11, 2023
ad9f790
reflect: set Index field in Field()
dgryski Mar 7, 2023
e0aee1f
reflect: Type.AssignableTo(): you can assign anything to interface{}
dgryski Mar 11, 2023
069c397
reflect: fix off-by-one in Zero sizing
dgryski Mar 6, 2023
584a271
reflect: add type check to Value.Field()
dgryski Mar 1, 2023
a366c01
reflect: call decomposeInterface() directly in TypeOf()
dgryski Mar 12, 2023
6768af9
reflect: TypeOf(nil) should be nil
dgryski Mar 14, 2023
b044d27
reflect: move StructField.Anonymous field to match upstream location
dgryski Mar 6, 2023
94a54bc
reflect: add UnsafePointer() for Func types
dgryski Mar 10, 2023
ac36f23
reflect: MapIter.Next() needs to allocate new keys/values every time
dgryski Mar 7, 2023
0da97e2
reflect: fix IsNil() for interfaces
dgryski Mar 15, 2023
91d6ca0
reflect: add SetBytes()
dgryski Mar 15, 2023
e849901
Update src/reflect/value.go
dgryski Mar 15, 2023
c672864
reflect: loosen unaddressable array rules for Copy()
dgryski Mar 7, 2023
9f02340
reflect: fix Type.Name to return empty string for non-named types
dgryski Mar 15, 2023
fa4f361
reflect: add FieldByName(), and FieldByIndex()
dgryski Mar 1, 2023
d9c6f7c
reflect: import visiblefields code and tests from upstream
dgryski Mar 5, 2023
15109a2
reflect: disable visiblefields test for FieldByIndexErr
dgryski Mar 6, 2023
93fb897
compiler, reflect: properly handle embedded structs
dgryski Mar 6, 2023
1626b50
reflect: set PkgPath in StructField
dgryski Mar 8, 2023
344e493
compiler,reflect: fix pkgpath for struct fields
dgryski Mar 8, 2023
833c91f
builder: fix binary size rodata value
dgryski Mar 14, 2023
4f7864b
device/gba: add mostly complete hand-written register definitions
deadprogram Mar 5, 2023
383e7ae
machine, runtime/interrupt: switch to use register definitions from d…
deadprogram Mar 5, 2023
db08b5a
transform: update reflect-implements test to opaque pointers
aykevl Mar 16, 2023
0ddd656
transform: update allocs test to opaque pointers
aykevl Mar 16, 2023
f8a6e66
transform: update gc-stackslots test to opaque pointers
aykevl Mar 16, 2023
7fb2382
transform: update interface test to opaque pointers
aykevl Mar 16, 2023
e4f29ae
transform: update interrupt test to opaque pointers
aykevl Mar 16, 2023
905269b
transform: update maps test to opaque pointers
aykevl Mar 16, 2023
ec3a4da
transform: update panic test to opaque pointers
aykevl Mar 16, 2023
af247e2
transform: update stacksize test to opaque pointers
aykevl Mar 16, 2023
e0f3333
transform: update stringequal test to opaque pointers
aykevl Mar 16, 2023
4acb1a5
transform: update stringtobytes test to opaque pointers
aykevl Mar 16, 2023
6c40ee9
transform: update wasm-abi to use opaque pointers
aykevl Mar 16, 2023
c559863
machine/stm32: correct Flash implementation
deadprogram Mar 11, 2023
5b42871
compiler: support all kinds of recursive types
aykevl Mar 16, 2023
821227a
docker: correct path for GHCR dev container build
deadprogram Mar 19, 2023
7a96f0f
compiler,reflect: add reflect.Type.NumMethods()
dgryski Mar 7, 2023
569817a
refect: Type.String() should use a shortened package name
dgryski Mar 7, 2023
6a685b2
reflect: add test for Type.NumMethod()
dgryski Mar 8, 2023
0d65b4d
compiler: only define the package path once
dgryski Mar 9, 2023
f2cc98c
compiler,reflect: adjust struct layout for type info
dgryski Mar 13, 2023
876f089
compiler,reflect: sort out pkg path vs pkg name for named types
dgryski Mar 13, 2023
229f479
reflect: make sure pointerTo() works for named types
dgryski Mar 12, 2023
e0329b2
transform: fix OptimizeReflectImplements pass for new named elem offset
dgryski Mar 15, 2023
4f8127d
builder: bump sizes tests
dgryski Mar 16, 2023
24b4dc3
reflect: stub MapOf()
dgryski Mar 17, 2023
6fbe6fa
reflect: tweak Type.String() to match what encoding/json expects for …
dgryski Mar 19, 2023
8fb5877
reflect: fix isBinary() for float types
dgryski Mar 19, 2023
57b0c21
reflect: tweak Type.String() for interfaces to make encoding/xml happy
dgryski Mar 19, 2023
4d43df7
reflect: fix some vet issues
dgryski Mar 21, 2023
17f5fb1
reflect; SetLen() requires an addressable value
dgryski Mar 21, 2023
523c6c0
compiler: correctly generate code for local named types
aykevl Mar 16, 2023
5ed0cec
nrf: fix memory issue in ADC read
aykevl Mar 15, 2023
f180339
compiler: add alloc attributes to runtime.alloc
aykevl Mar 11, 2023
e8f6df9
machine/usb: add ability to override default VID, PID, manufacturer n…
deadprogram Mar 20, 2023
a4a1001
examples: use hid-keyboard example to show how to to override default…
deadprogram Mar 20, 2023
62e1c3e
wasm: implement the //go:wasmimport directive
aykevl Sep 15, 2022
4b0e56c
Added Gopher Badge support
conejoninja Mar 22, 2023
d73e12d
feat: fix typos
shivaylamba Mar 24, 2023
c482d65
reflect: replace all_test with copy from upstream
dgryski Mar 22, 2023
35dcf13
reflect: comment out all tests but keep imports
dgryski Mar 22, 2023
688a5db
reflct: reenable DeepEqual tests
dgryski Mar 22, 2023
45c916f
reflect: rename tests in value_test to avoid conflicts upstream tests
dgryski Mar 22, 2023
3612b77
reflect: uncomment all(?) the tests that pass
dgryski Mar 22, 2023
bedd27b
reflect: handle map-keys-as-interfaces for MapIter()
dgryski Mar 18, 2023
2152735
compiler: for interface maps, use the original named type if available
dgryski Mar 18, 2023
6cb7f29
reflect: add tests for map interface lookup fixes
dgryski Mar 18, 2023
3aa8c8e
reflect: fix typo in unit test
dgryski Mar 22, 2023
f7880e7
reflect: tweak v.typecode.Key().(*rawType) -> v.typecode.key()
dgryski Mar 22, 2023
a5ddc68
reflect: unpack interfaces in MapKeys() if needed
dgryski Mar 17, 2023
adaa7ca
reflect: SetMapIndex: use AssignableTo() instead of type equality
dgryski Mar 11, 2023
c0f8f12
reflect: convert map elements to an interface, if needed
dgryski Mar 11, 2023
63c7a41
reflect: convert non-interface to interface in Set()
dgryski Mar 12, 2023
9c0bf8b
reflect: Value.Set: fix direction of assignment check
dgryski Mar 11, 2023
7201b13
reflect: fix key type logic for maps
dgryski Mar 23, 2023
360f690
reflect: add test for map[interface{}]T
dgryski Mar 23, 2023
a3fdbec
Refactor SystemStack function for arm targets.
waj334 Mar 5, 2023
13fb5aa
Update task_stack_cortexm.c
waj334 Mar 17, 2023
72c7adf
reflect: Convert() for integer and float types
dgryski Mar 11, 2023
0b6bb12
reflect: add Convert() for string -> []byte and []byte -> string
dgryski Mar 11, 2023
855e12d
reflect: Convert(): add Float() conversions
dgryski Mar 19, 2023
6b73b5e
reflect: document which Convert() cases are still unimplemented
dgryski Mar 22, 2023
f239e8e
reflect: typo in uint test
dgryski Mar 22, 2023
39f76f4
reflect: fix indirect issues with makeInt/makeUint/makeFloat
dgryski Mar 22, 2023
97ece75
reflect: add missing Uintptr type and some numerical tests
dgryski Mar 25, 2023
2c0f61c
reflect: fix bug found by Convert() tests on wasi
dgryski Mar 25, 2023
3104362
reflect: use direct calls to runtime string functions
aykevl Mar 27, 2023
17bc0d6
compiler: only support //go:wasmimport on declared functions
aykevl Mar 27, 2023
85da9a0
fix resource leak in os.(*File).Close
achille-roussel Feb 9, 2023
dfb8c99
machine/lorae5: correct mapping for I2C bus, add pin mapping to enabl…
deadprogram Mar 28, 2023
c611c72
build: test net on linux & mac only (random CI fails on windows)
kenbell Mar 28, 2023
568c2a4
rp2040: remove SPI DataBits property
aykevl Mar 28, 2023
464ebc4
compiler: implement most math/bits functions
aykevl Mar 29, 2023
5fee342
runtime: preallocate maps to size hint actually works
dgryski Mar 27, 2023
cb9c6f0
runtime: zero map key/value on deletion to so GC doesn't see them
dgryski Mar 27, 2023
a3afd4e
runtime: factor duplicate hashmap snippts to functions
dgryski Mar 27, 2023
bf20c65
runtime: take max hash size into account when preallocating with size…
dgryski Mar 28, 2023
4e4e4ee
runtime: use unsafe.Add() in hashmap code
dgryski Mar 29, 2023
1213a45
build: add GH workflow to build LLVM image when needed
deadprogram Mar 19, 2023
3fbd3c4
compiler,reflect: support channel directions
dgryski Mar 24, 2023
1a60a1f
reflect: stub channel select routines/types
dgryski Mar 24, 2023
e7bd22e
reflect: print struct tags in Type.String() (with a caveat)
dgryski Mar 24, 2023
53b95ca
reflect: uncomment Type.String() tests that pass
dgryski Mar 24, 2023
181d2ad
reflect: add CanInt() and friends and uncomments tests that pass
dgryski Mar 24, 2023
017ab4c
reflect: fix TestCanSetField
dgryski Mar 24, 2023
a11f243
reflect: TestAliasNames passes
dgryski Mar 24, 2023
d4bdd83
reflect: implement and test Value.Comparable
dgryski Mar 24, 2023
195de23
reflect: Fix Kind(-1).String() and enable test
dgryski Mar 24, 2023
5faff2e
reflect: add sipmlified strconv.Quote() implementation for struct tags
dgryski Mar 24, 2023
0cd93a3
reflect: add valueFlagRO
dgryski Mar 30, 2023
b044d4f
reflect: add more RO checks
dgryski Mar 30, 2023
e0bf376
rp2040: unify all linker scripts using LDFLAGS
aykevl Mar 30, 2023
b39a982
reflect: uncomment another test and fix RO logic issues it uncovered
dgryski Mar 30, 2023
e6ccdd9
reflect: another obscure RO bug
dgryski Mar 30, 2023
698b1f1
testing: support -test.count
dgryski Mar 31, 2023
a2f95d6
main: stuff test runner options into their own struct
dgryski Mar 31, 2023
9182664
testing: make test output unbuffered when verbose
dgryski Mar 31, 2023
84a3273
main: fix tests with default TestConfig.Count=0 doesn't skip all tests
dgryski Mar 31, 2023
4a81cac
main: make sure all testing output goes to the same place
dgryski Mar 31, 2023
d50c54f
Makefile: compress/lzw seems to work on wasi now.
dgryski Mar 31, 2023
50d6813
main: set WASMTIME_BACKTRACE_DETAILS when running in wasmtime.
dgryski Mar 31, 2023
ee81c31
testing: import new version of match.go
dgryski Mar 31, 2023
63aaa43
testing: add test.skip
dgryski Mar 31, 2023
66d3c4e
main: fix typos in flag usage messages
dgryski Apr 1, 2023
8badf79
testing: remove unused variable left over from `count` prototyping
dgryski Apr 1, 2023
6eda52a
rp2040: remove SPI deadline
aykevl Mar 31, 2023
60bb832
reflect: handle Convert'ing between identical underlying types
dgryski Apr 1, 2023
a85cb22
reflect: uncomment TestAppend and fix a bug it found
dgryski Apr 1, 2023
0c4f9d1
reflect; uncomment SetZero (but comment out the parts that fail)
dgryski Apr 1, 2023
9e7882b
reflect: uncomment a another test the fails and doc some that don't
dgryski Apr 1, 2023
7d83e76
rp2040: use 4MHz as default frequency for SPI
aykevl Apr 1, 2023
9e97566
machine/usb/hid/joystick: move joystick under HID as it belongs and a…
deadprogram Mar 31, 2023
71b44e7
machine/usb/hid/joystick: allow joystick settings override
sago35 Apr 2, 2023
19e4db4
samd51: use correct SPI frequency
aykevl Apr 3, 2023
4bf7308
machine: make gosched available to machine package
kenbell Mar 25, 2023
feadb9c
nrf: move nrf52 family code to correct file name
kenbell Mar 25, 2023
e0385e4
nrf: new peripheral type for nrf528xx chips
kenbell Mar 25, 2023
ad3e9e1
i2c: implement target mode for rp2040 and nrf
kenbell Mar 25, 2023
3b4e543
rp2040: use DMA for send-only SPI transfers
aykevl Apr 1, 2023
4217549
machine/atsamd51: remove extra BK0RDY clear
sago35 Apr 10, 2023
e00a239
testing: fix benchmark logging output
dgryski Apr 9, 2023
1672610
testing: move runtime.GC() call to runN to match upstream
dgryski Apr 9, 2023
4326c8f
compiler: ensure all defers have been seen before creating rundefers
dgryski Apr 10, 2023
60b23a7
compiler: update test outputs
dgryski Apr 10, 2023
0244bed
testdata: add test for else/defer bug
dgryski Apr 11, 2023
2b1dc4f
testing: add -test.shuffle to order randomize test and benchmark order
dgryski Apr 12, 2023
b4c9b57
Switch interp tests to opaque pointers
QuLogic Apr 15, 2023
8b9bee4
main: don't print `ok` for a successful compile-only
dgryski Apr 15, 2023
48ef68d
examples: replace fmt with encoding/hex in usb-midi example
deadprogram Apr 16, 2023
1bba5f5
targets: make msd-volume-name an array
kenbell Apr 14, 2023
64957c5
samd51: fix ADC multisampling
aykevl Apr 18, 2023
4e9f9e2
fix some comments
cuishuang Apr 18, 2023
06e34ca
builder: print the status of the job that just completed
dgryski Apr 17, 2023
79b63dd
device/gba: additional IO mapping for sound, DMA, SIO, and sprites
deadprogram Apr 22, 2023
af9f196
all: better errors when multiple mcus share VID/PID
kenbell Apr 7, 2023
7aac1a1
all: honour port for `-monitor` flash flag
kenbell Apr 7, 2023
c89a684
machine/gba: rename display and make pointer receivers
deadprogram Mar 29, 2023
4bf8b61
Revert "all: honour port for `-monitor` flash flag"
deadprogram Apr 25, 2023
76303f9
Revert "all: better errors when multiple mcus share VID/PID"
deadprogram Apr 25, 2023
5983833
Add machine.CPUReset() (#3595)
scottfeldman Apr 25, 2023
3392827
runtime: print the address where a panic happened
aykevl Apr 24, 2023
ae381e7
main: print source location when a panic happens in -monitor
aykevl Apr 24, 2023
0b2aec1
runtime: improve panic message when heap allocating in an interrupt
aykevl Apr 25, 2023
7e05c92
cortexm: add "gdb" as a debugger
aykevl Apr 26, 2023
839edec
cortexm: fix stack size offset
aykevl Apr 26, 2023
9bf5d6a
builder: add link to compatibility matrix
aykevl Apr 26, 2023
9d7dd3d
docs: update LICENSE year
deadprogram Apr 25, 2023
36bd66a
docs: update README for brevity and to add further info about webasse…
deadprogram Apr 25, 2023
4c0fbbf
add struct size and field offsets to reflect data
dgryski Apr 15, 2023
6a2dd35
builder: bump sizes test values
dgryski Apr 27, 2023
2ab7ee6
machine/usb: refactoring descriptors into subpackage for modularity
deadprogram Apr 2, 2023
25b0341
machine/usb/hid/joystick: handle case where we cannot find the correc…
deadprogram Apr 17, 2023
d28b58e
machine/usb/hid/mouse: add support for mouse back and forward
sago35 Apr 28, 2023
c70daa2
machine/usb: move MIDI under usb/adc (Audio Device Class) package
deadprogram Apr 28, 2023
1a67795
examples/usb-midi: remove serial communication from MIDI example
deadprogram Apr 28, 2023
4fa6a13
syscall: add fsync using libc
achille-roussel May 1, 2023
ccfe92a
os: add os.(*File).Sync
achille-roussel May 1, 2023
666312f
implement Sync on stdioFileHandle
achille-roussel May 1, 2023
ee3af40
os: implement os.(*File).ReadDir for -target=wasi
achille-roussel May 3, 2023
4e41e90
cgo: allow LDFLAGS: --export=...
evacchi May 4, 2023
e4da354
tools: add sizediff tool
aykevl Apr 27, 2023
d8ee520
machine/usb/descriptor: refactor HID report creation
deadprogram Apr 28, 2023
9093570
machine/usb/descriptor: rename and export Append() to make it easier …
deadprogram Apr 28, 2023
1d5c5ca
machine/usb/descriptor: further refactor HID report creation
deadprogram Apr 29, 2023
602f35a
os: implement os.(*File).WriteAt (#3697)
achille-roussel May 5, 2023
373ab34
Add dummy package for `runtime/metrics` to that modules that depend u…
DazWilkin May 5, 2023
e736396
machine/atsam*, nrf, rp2040, stm32: correct error flashBlockDevice pa…
deadprogram May 5, 2023
7e8a2e8
machine/rp2040: correct param for number of bytes to be erased by flash
deadprogram May 6, 2023
d331aca
machine/rp2040: correct write block size for flash
deadprogram May 6, 2023
14fed59
machine/usb/hid: fix hidreport
sago35 May 6, 2023
20fdbc1
pinetime: update the target file
aykevl May 7, 2023
e5af121
nrf: refactor ADC code a little bit
aykevl May 9, 2023
e82f595
nrf: add ability to set the reference voltage
aykevl May 9, 2023
8688127
nrf: add sample time to ADC
aykevl May 9, 2023
f4c8c37
nrf: add ADC oversampling support
aykevl May 9, 2023
6435f62
builder: implement Nordic DFU file writer in Go
aykevl May 6, 2023
b56a263
machine/flash: remove FlashBuffer, modify flash example to use BlockD…
deadprogram May 9, 2023
d1a45f2
machine/usb/hid: fix hidreport (2)
sago35 May 10, 2023
af936f3
ci: add comment with binary size difference
aykevl Apr 27, 2023
535e64a
reflect: optimize Zero() a little bit
aykevl May 13, 2023
0291356
build: add write permission to sizediff GH actions job to always be a…
deadprogram May 16, 2023
07fb3a0
compiler,reflect: make field offsets varints
dgryski Apr 27, 2023
f55bb8e
builder: bump sizes_test
dgryski Apr 27, 2023
e3c9680
runtime: fix structField.data comment
dgryski May 15, 2023
d256804
src/reflect: remove overflow checks from uvarint32
dgryski May 15, 2023
cdbd850
machine: add DefaultUART to xiao
sago35 May 16, 2023
af76c80
windows: re-enable parallelism
aykevl May 13, 2023
4c68268
compileopts: don't filter build tags, use specific build tags instead
aykevl May 13, 2023
b336a15
build: update GH actions-comment-pull-request to v2.3.1
deadprogram May 17, 2023
6dba16f
compiler: only calculate functionInfo once
aykevl May 19, 2023
41e787d
compiler: add tests for error messages
aykevl May 19, 2023
b08ff17
compiler: disallow most types in //go:wasmimport
aykevl May 19, 2023
1b66da4
build: add issues write permission to sizediff job
deadprogram May 20, 2023
572c22f
add Settings to debug.BuildInfo
rajatjindal May 20, 2023
b43bd9e
avr: fix interrupt names for newer attiny chips
aykevl May 16, 2023
4d11d55
avr: update gen-device-avr tool to support newer AVRs
aykevl May 17, 2023
2fb866c
avr: add attiny1616 support
aykevl May 17, 2023
54c07b7
interp: move some often-repeated code into a function
aykevl May 20, 2023
cf39db3
interp: fix subtle bug in pointer xor
aykevl May 20, 2023
481f60c
interp: add support for reading a pointer tag
aykevl May 20, 2023
da81784
attiny1616: implement Pin.Get()
aykevl May 21, 2023
f366cd5
build: explicitly pass the github token to GH action
deadprogram May 22, 2023
b7b23ac
samd21: fix issue with WS2812 driver
aykevl May 26, 2023
bcdb3fc
fix go:noinlines in volatile package
soypat May 27, 2023
ee90bde
build: only make comment on sizediff job when run from the main repo
deadprogram May 29, 2023
635d322
Add bluemicro840 board
jpconstantineau Jun 1, 2023
09c8348
adding new uf2 target for PCA10056
jpconstantineau Jun 2, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
build/
llvm-*/
.github
.circleci

33 changes: 26 additions & 7 deletions .github/workflows/build-macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@ jobs:
with:
go-version: '1.20'
cache: true
- name: Cache LLVM source
uses: actions/cache@v3
- name: Restore LLVM source cache
uses: actions/cache/restore@v3
id: cache-llvm-source
with:
key: llvm-source-15-macos-v2
key: llvm-source-15-macos-v3
path: |
llvm-project/clang/lib/Headers
llvm-project/clang/include
Expand All @@ -43,11 +43,22 @@ jobs:
- name: Download LLVM source
if: steps.cache-llvm-source.outputs.cache-hit != 'true'
run: make llvm-source
- name: Cache LLVM build
uses: actions/cache@v3
- name: Save LLVM source cache
uses: actions/cache/save@v3
if: steps.cache-llvm-source.outputs.cache-hit != 'true'
with:
key: ${{ steps.cache-llvm-source.outputs.cache-primary-key }}
path: |
llvm-project/clang/lib/Headers
llvm-project/clang/include
llvm-project/compiler-rt
llvm-project/lld/include
llvm-project/llvm/include
- name: Restore LLVM build cache
uses: actions/cache/restore@v3
id: cache-llvm-build
with:
key: llvm-build-15-macos-v3
key: llvm-build-15-macos-v4
path: llvm-build
- name: Build LLVM
if: steps.cache-llvm-build.outputs.cache-hit != 'true'
Expand All @@ -61,6 +72,12 @@ jobs:
# build!
make llvm-build
find llvm-build -name CMakeFiles -prune -exec rm -r '{}' \;
- name: Save LLVM build cache
uses: actions/cache/save@v3
if: steps.cache-llvm-build.outputs.cache-hit != 'true'
with:
key: ${{ steps.cache-llvm-build.outputs.cache-primary-key }}
path: llvm-build
- name: Cache wasi-libc sysroot
uses: actions/cache@v3
id: cache-wasi-libc
Expand All @@ -70,9 +87,11 @@ jobs:
- name: Build wasi-libc
if: steps.cache-wasi-libc.outputs.cache-hit != 'true'
run: make wasi-libc
- name: make gen-device
run: make -j3 gen-device
- name: Test TinyGo
shell: bash
run: make test GOTESTFLAGS="-v -short"
run: make test GOTESTFLAGS="-short"
- name: Build TinyGo release tarball
run: make release -j3
- name: Test stdlib packages
Expand Down
43 changes: 27 additions & 16 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
with:
images: |
tinygo/tinygo-dev
ghcr.io/${{ github.repository }}/tinygo-dev
ghcr.io/${{ github.repository_owner }}/tinygo-dev
tags: |
type=sha,format=long
type=raw,value=latest
Expand All @@ -53,6 +53,7 @@ jobs:
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
build-contexts: tinygo-llvm-build=docker-image://tinygo/llvm-15
cache-from: type=gha
cache-to: type=gha,mode=max
- name: Trigger Drivers repo build on Github Actions
Expand All @@ -69,21 +70,31 @@ jobs:
-H "Accept: application/vnd.github.v3+json" \
https://api.github.com/repos/tinygo-org/bluetooth/actions/workflows/linux.yml/dispatches \
-d '{"ref": "dev"}'
- name: Trigger TinyFS repo build on CircleCI
- name: Trigger TinyFS repo build on Github Actions
run: |
curl --location --request POST 'https://circleci.com/api/v2/project/github/tinygo-org/tinyfs/pipeline' \
--header 'Content-Type: application/json' \
-d '{"branch": "dev"}' \
-u "${{ secrets.CIRCLECI_API_TOKEN }}"
- name: Trigger TinyFont repo build on CircleCI
curl -X POST \
-H "Authorization: Bearer ${{secrets.GHA_ACCESS_TOKEN}}" \
-H "Accept: application/vnd.github.v3+json" \
https://api.github.com/repos/tinygo-org/tinyfs/actions/workflows/build.yml/dispatches \
-d '{"ref": "dev"}'
- name: Trigger TinyFont repo build on Github Actions
run: |
curl --location --request POST 'https://circleci.com/api/v2/project/github/tinygo-org/tinyfont/pipeline' \
--header 'Content-Type: application/json' \
-d '{"branch": "dev"}' \
-u "${{ secrets.CIRCLECI_API_TOKEN }}"
- name: Trigger TinyDraw repo build on CircleCI
curl -X POST \
-H "Authorization: Bearer ${{secrets.GHA_ACCESS_TOKEN}}" \
-H "Accept: application/vnd.github.v3+json" \
https://api.github.com/repos/tinygo-org/tinyfont/actions/workflows/build.yml/dispatches \
-d '{"ref": "dev"}'
- name: Trigger TinyDraw repo build on Github Actions
run: |
curl --location --request POST 'https://circleci.com/api/v2/project/github/tinygo-org/tinydraw/pipeline' \
--header 'Content-Type: application/json' \
-d '{"branch": "dev"}' \
-u "${{ secrets.CIRCLECI_API_TOKEN }}"
curl -X POST \
-H "Authorization: Bearer ${{secrets.GHA_ACCESS_TOKEN}}" \
-H "Accept: application/vnd.github.v3+json" \
https://api.github.com/repos/tinygo-org/tinydraw/actions/workflows/build.yml/dispatches \
-d '{"ref": "dev"}'
- name: Trigger TinyTerm repo build on Github Actions
run: |
curl -X POST \
-H "Authorization: Bearer ${{secrets.GHA_ACCESS_TOKEN}}" \
-H "Accept: application/vnd.github.v3+json" \
https://api.github.com/repos/tinygo-org/tinyterm/actions/workflows/build.yml/dispatches \
-d '{"ref": "dev"}'
128 changes: 100 additions & 28 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,11 @@ jobs:
path: |
~/.cache/go-build
~/go/pkg/mod
- name: Cache LLVM source
uses: actions/cache@v3
- name: Restore LLVM source cache
uses: actions/cache/restore@v3
id: cache-llvm-source
with:
key: llvm-source-15-linux-alpine-v2
key: llvm-source-15-linux-alpine-v3
path: |
llvm-project/clang/lib/Headers
llvm-project/clang/include
Expand All @@ -53,11 +53,22 @@ jobs:
- name: Download LLVM source
if: steps.cache-llvm-source.outputs.cache-hit != 'true'
run: make llvm-source
- name: Cache LLVM build
uses: actions/cache@v3
- name: Save LLVM source cache
uses: actions/cache/save@v3
if: steps.cache-llvm-source.outputs.cache-hit != 'true'
with:
key: ${{ steps.cache-llvm-source.outputs.cache-primary-key }}
path: |
llvm-project/clang/lib/Headers
llvm-project/clang/include
llvm-project/compiler-rt
llvm-project/lld/include
llvm-project/llvm/include
- name: Restore LLVM build cache
uses: actions/cache/restore@v3
id: cache-llvm-build
with:
key: llvm-build-15-linux-alpine-v3
key: llvm-build-15-linux-alpine-v4
path: llvm-build
- name: Build LLVM
if: steps.cache-llvm-build.outputs.cache-hit != 'true'
Expand All @@ -71,6 +82,12 @@ jobs:
make llvm-build
# Remove unnecessary object files (to reduce cache size).
find llvm-build -name CMakeFiles -prune -exec rm -r '{}' \;
- name: Save LLVM build cache
uses: actions/cache/save@v3
if: steps.cache-llvm-build.outputs.cache-hit != 'true'
with:
key: ${{ steps.cache-llvm-build.outputs.cache-primary-key }}
path: llvm-build
- name: Cache Binaryen
uses: actions/cache@v3
id: cache-binaryen
Expand Down Expand Up @@ -122,7 +139,9 @@ jobs:
cache: true
- name: Install wasmtime
run: |
curl https://wasmtime.dev/install.sh -sSf | bash
mkdir -p $HOME/.wasmtime $HOME/.wasmtime/bin
curl https://github.com/bytecodealliance/wasmtime/releases/download/v5.0.0/wasmtime-v5.0.0-x86_64-linux.tar.xz -o wasmtime-v5.0.0-x86_64-linux.tar.xz -SfL
tar -C $HOME/.wasmtime/bin --wildcards -xf wasmtime-v5.0.0-x86_64-linux.tar.xz --strip-components=1 wasmtime-v5.0.0-x86_64-linux/*
echo "$HOME/.wasmtime/bin" >> $GITHUB_PATH
- name: Download release artifact
uses: actions/download-artifact@v3
Expand Down Expand Up @@ -166,13 +185,15 @@ jobs:
node-version: '14'
- name: Install wasmtime
run: |
curl https://wasmtime.dev/install.sh -sSf | bash
mkdir -p $HOME/.wasmtime $HOME/.wasmtime/bin
curl -L https://github.com/bytecodealliance/wasmtime/releases/download/v5.0.0/wasmtime-v5.0.0-x86_64-linux.tar.xz -o wasmtime-v5.0.0-x86_64-linux.tar.xz -SfL
tar -C $HOME/.wasmtime/bin --wildcards -xf wasmtime-v5.0.0-x86_64-linux.tar.xz --strip-components=1 wasmtime-v5.0.0-x86_64-linux/*
echo "$HOME/.wasmtime/bin" >> $GITHUB_PATH
- name: Cache LLVM source
uses: actions/cache@v3
- name: Restore LLVM source cache
uses: actions/cache/restore@v3
id: cache-llvm-source
with:
key: llvm-source-15-linux-asserts-v2
key: llvm-source-15-linux-asserts-v3
path: |
llvm-project/clang/lib/Headers
llvm-project/clang/include
Expand All @@ -182,11 +203,22 @@ jobs:
- name: Download LLVM source
if: steps.cache-llvm-source.outputs.cache-hit != 'true'
run: make llvm-source
- name: Cache LLVM build
uses: actions/cache@v3
- name: Save LLVM source cache
uses: actions/cache/save@v3
if: steps.cache-llvm-source.outputs.cache-hit != 'true'
with:
key: ${{ steps.cache-llvm-source.outputs.cache-primary-key }}
path: |
llvm-project/clang/lib/Headers
llvm-project/clang/include
llvm-project/compiler-rt
llvm-project/lld/include
llvm-project/llvm/include
- name: Restore LLVM build cache
uses: actions/cache/restore@v3
id: cache-llvm-build
with:
key: llvm-build-15-linux-asserts-v3
key: llvm-build-15-linux-asserts-v4
path: llvm-build
- name: Build LLVM
if: steps.cache-llvm-build.outputs.cache-hit != 'true'
Expand All @@ -198,6 +230,12 @@ jobs:
make llvm-build ASSERT=1
# Remove unnecessary object files (to reduce cache size).
find llvm-build -name CMakeFiles -prune -exec rm -r '{}' \;
- name: Save LLVM build cache
uses: actions/cache/save@v3
if: steps.cache-llvm-build.outputs.cache-hit != 'true'
with:
key: ${{ steps.cache-llvm-build.outputs.cache-primary-key }}
path: llvm-build
- name: Cache Binaryen
uses: actions/cache@v3
id: cache-binaryen
Expand Down Expand Up @@ -237,7 +275,7 @@ jobs:
# in that process to avoid doing lots of duplicate work and to avoid
# complications around precompiled libraries such as compiler-rt shipped as
# part of the release tarball.
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
needs: build-linux
steps:
- name: Checkout
Expand All @@ -254,11 +292,11 @@ jobs:
with:
go-version: '1.20'
cache: true
- name: Cache LLVM source
uses: actions/cache@v3
- name: Restore LLVM source cache
uses: actions/cache/restore@v3
id: cache-llvm-source
with:
key: llvm-source-15-linux-v2
key: llvm-source-15-linux-v3
path: |
llvm-project/clang/lib/Headers
llvm-project/clang/include
Expand All @@ -268,11 +306,22 @@ jobs:
- name: Download LLVM source
if: steps.cache-llvm-source.outputs.cache-hit != 'true'
run: make llvm-source
- name: Cache LLVM build
uses: actions/cache@v3
- name: Save LLVM source cache
uses: actions/cache/save@v3
if: steps.cache-llvm-source.outputs.cache-hit != 'true'
with:
key: ${{ steps.cache-llvm-source.outputs.cache-primary-key }}
path: |
llvm-project/clang/lib/Headers
llvm-project/clang/include
llvm-project/compiler-rt
llvm-project/lld/include
llvm-project/llvm/include
- name: Restore LLVM build cache
uses: actions/cache/restore@v3
id: cache-llvm-build
with:
key: llvm-build-15-linux-arm-v3
key: llvm-build-15-linux-arm-v4
path: llvm-build
- name: Build LLVM
if: steps.cache-llvm-build.outputs.cache-hit != 'true'
Expand All @@ -286,6 +335,12 @@ jobs:
make llvm-build CROSS=arm-linux-gnueabihf
# Remove unnecessary object files (to reduce cache size).
find llvm-build -name CMakeFiles -prune -exec rm -r '{}' \;
- name: Save LLVM build cache
uses: actions/cache/save@v3
if: steps.cache-llvm-build.outputs.cache-hit != 'true'
with:
key: ${{ steps.cache-llvm-build.outputs.cache-primary-key }}
path: llvm-build
- name: Cache Binaryen
uses: actions/cache@v3
id: cache-binaryen
Expand Down Expand Up @@ -336,7 +391,7 @@ jobs:
# in that process to avoid doing lots of duplicate work and to avoid
# complications around precompiled libraries such as compiler-rt shipped as
# part of the release tarball.
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
needs: build-linux
steps:
- name: Checkout
Expand All @@ -354,11 +409,11 @@ jobs:
with:
go-version: '1.20'
cache: true
- name: Cache LLVM source
uses: actions/cache@v3
- name: Restore LLVM source cache
uses: actions/cache/restore@v3
id: cache-llvm-source
with:
key: llvm-source-15-linux-v2
key: llvm-source-15-linux-v3
path: |
llvm-project/clang/lib/Headers
llvm-project/clang/include
Expand All @@ -368,11 +423,22 @@ jobs:
- name: Download LLVM source
if: steps.cache-llvm-source.outputs.cache-hit != 'true'
run: make llvm-source
- name: Cache LLVM build
uses: actions/cache@v3
- name: Save LLVM source cache
uses: actions/cache/save@v3
if: steps.cache-llvm-source.outputs.cache-hit != 'true'
with:
key: ${{ steps.cache-llvm-source.outputs.cache-primary-key }}
path: |
llvm-project/clang/lib/Headers
llvm-project/clang/include
llvm-project/compiler-rt
llvm-project/lld/include
llvm-project/llvm/include
- name: Restore LLVM build cache
uses: actions/cache/restore@v3
id: cache-llvm-build
with:
key: llvm-build-15-linux-arm64-v3
key: llvm-build-15-linux-arm64-v4
path: llvm-build
- name: Build LLVM
if: steps.cache-llvm-build.outputs.cache-hit != 'true'
Expand All @@ -384,6 +450,12 @@ jobs:
make llvm-build CROSS=aarch64-linux-gnu
# Remove unnecessary object files (to reduce cache size).
find llvm-build -name CMakeFiles -prune -exec rm -r '{}' \;
- name: Save LLVM build cache
uses: actions/cache/save@v3
if: steps.cache-llvm-build.outputs.cache-hit != 'true'
with:
key: ${{ steps.cache-llvm-build.outputs.cache-primary-key }}
path: llvm-build
- name: Cache Binaryen
uses: actions/cache@v3
id: cache-binaryen
Expand Down
Loading