|
| 1 | +0.18.0 |
| 2 | +--- |
| 3 | + |
| 4 | +* **command line** |
| 5 | + - drop support for Go 1.11 and 1.12 |
| 6 | + - throw an error when no target is specified on Windows |
| 7 | + - improve error messages in `getDefaultPort()`, support for multiple ports |
| 8 | + - remove `-cflags` and `-ldflags` flags |
| 9 | + - implement `-ldflags="-X ..."` |
| 10 | + - add `-print-allocs` flag that lets you print all heap allocations |
| 11 | + - openocd commands in tinygo command line |
| 12 | + - add `-llvm-features` parameter |
| 13 | + - match `go test` output |
| 14 | + - discover USB ports only, this will ignore f.ex. bluetooth |
| 15 | + - use physicmal path instead of cached GOROOT in function getGoroot |
| 16 | + - add goroot for snap installs |
| 17 | +* **compiler** |
| 18 | + - `builder`: add support for `-opt=0` |
| 19 | + - `builder`, `compiler`: compile and cache packages in parallel |
| 20 | + - `builder`: run interp per package |
| 21 | + - `builder`: cache C and assembly file outputs |
| 22 | + - `builder`: add support for `-x` flag to print commands |
| 23 | + - `builder`: add optsize attribute while building the package |
| 24 | + - `builder`: run function passes per package |
| 25 | + - `builder`: hard code Clang compiler |
| 26 | + - `compiler`: do not use `llvm.GlobalContext()` |
| 27 | + - `compiler`: remove SimpleDCE pass |
| 28 | + - `compiler`: do not emit nil checks for `*ssa.Alloc` instructions |
| 29 | + - `compiler`: merge `runtime.typecodeID` and runtime.typeInInterface |
| 30 | + - `compiler`: do not check for impossible type asserts |
| 31 | + - `compiler`: fix use of global context: `llvm.Int32Type()` |
| 32 | + - `compiler`: add interface IR test |
| 33 | + - `compiler`: fix lack of method name in interface matching |
| 34 | + - `compiler`: fix "fragment covers entire variable" bug |
| 35 | + - `compiler`: optimize string literals and globals |
| 36 | + - `compiler`: decouple func lowering from interface type codes |
| 37 | + - `compiler`: add function attributes to some runtime calls |
| 38 | + - `compiler`: improve position information in error messages |
| 39 | + - `cgo`: add support for CFLAGS in .c files |
| 40 | + - `interp`: support GEP on fixed (MMIO) addresses |
| 41 | + - `interp`: handle `(reflect.Type).Elem()` |
| 42 | + - `interp`: add support for runtime.interfaceMethod |
| 43 | + - `interp`: make toLLVMValue return an error instead of panicking |
| 44 | + - `interp`: add support for switch statement |
| 45 | + - `interp`: fix phi instruction |
| 46 | + - `interp`: remove map support |
| 47 | + - `interp`: support extractvalue/insertvalue with multiple operands |
| 48 | + - `transform`: optimize string comparisons against "" |
| 49 | + - `transform`: optimize `reflect.Type` `Implements()` method |
| 50 | + - `transform`: fix bug in interface lowering when signatures are renamed |
| 51 | + - `transform`: don't rely on struct name of `runtime.typecodeID` |
| 52 | + - `transform`: use IPSCCP pass instead of the constant propagation pass |
| 53 | + - `transform`: fix func lowering assertion failure |
| 54 | + - `transform`: do not lower zero-sized alloc to alloca |
| 55 | + - `transform`: split interface and reflect lowering |
| 56 | +* **standard library** |
| 57 | + - `runtime`: add dummy debug package |
| 58 | + - `machine`: fix data shift/mask in newUSBSetup |
| 59 | + - `machine`: make `machine.I2C0` and similar objects pointers |
| 60 | + - `machine`: unify usbcdc code |
| 61 | + - `machine`: refactor PWM support |
| 62 | + - `machine`: avoid heap allocations in USB code |
| 63 | + - `reflect`: let `reflect.Type` be of interface type |
| 64 | + - `reflect`: implement a number of stub functions |
| 65 | + - `reflect`: check for access in the `Interface` method call |
| 66 | + - `reflect`: fix `AssignableTo` and `Implements` methods |
| 67 | + - `reflect`: implement `Value.CanAddr` |
| 68 | + - `reflect`: implement `Sizeof` and `Alignof` for func values |
| 69 | + - `reflect`: implement `New` function |
| 70 | + - `runtime`: implement command line arguments in hosted environments |
| 71 | + - `runtime`: implement environment variables for Linux |
| 72 | + - `runtime`: improve timers on nrf, and samd chips |
| 73 | +* **targets** |
| 74 | + - all: use -Qunused-arguments only for assembly files |
| 75 | + - `atmega1280`: add PWM support |
| 76 | + - `attiny`: remove dummy UART |
| 77 | + - `atsamd21`: improve SPI |
| 78 | + - `atsamd51`: fix PWM support in atsamd51p20 |
| 79 | + - `atsamd5x`: improve SPI |
| 80 | + - `atsamd51`, `atsame5x`: unify samd51 and same5x |
| 81 | + - `atsamd51`, `atsamd21`: fix `ADC.Get()` value at 8bit and 10bit |
| 82 | + - `atsame5x`: add support for CAN |
| 83 | + - `avr`: remove I2C stubs from attiny support |
| 84 | + - `cortexm`: check for `arm-none-eabi-gdb` and `gdb-multiarch` commands |
| 85 | + - `cortexm`: add `__isr_vector` symbol |
| 86 | + - `cortexm`: disable FPU on Cortex-M4 |
| 87 | + - `cortexm`: clean up Cortex-M target files |
| 88 | + - `fe310`: fix SPI read |
| 89 | + - `gameboy-advance`: Fix RGBA color interpretation |
| 90 | + - `nrf52833`: add PWM support |
| 91 | + - `stm32l0`: use unified UART logic |
| 92 | + - `stm32`: move f103 (bluepill) to common i2c code |
| 93 | + - `stm32`: separate altfunc selection for UART Tx/Rx |
| 94 | + - `stm32`: i2c implementation for F7, L5 and L4 MCUs |
| 95 | + - `stm32`: make SPI CLK fast to fix data issue |
| 96 | + - `stm32`: support SPI on L4 series |
| 97 | + - `unix`: avoid possible heap allocation with `-opt=0` |
| 98 | + - `unix`: use conservative GC by default |
| 99 | + - `unix`: use the tasks scheduler instead of coroutines |
| 100 | + - `wasi`: upgrade WASI version to wasi_snapshot_preview1 |
| 101 | + - `wasi`: darwin: support basic file io based on libc |
| 102 | + - `wasm`: only export explicitly exported functions |
| 103 | + - `wasm`: use WASI ABI for exit function |
| 104 | + - `wasm`: scan globals conservatively |
| 105 | +* **boards** |
| 106 | + - `arduino-mega1280`: add support for the Arduino Mega 1280 |
| 107 | + - `arduino-nano-new`: Add Arduino Nano w/ New Bootloader target |
| 108 | + - `atsame54-xpro`: add initial support this board |
| 109 | + - `feather-m4-can`: add initial support for this board |
| 110 | + - `grandcentral-m4`: add board support for Adafruit Grand Central M4 (SAMD51) |
| 111 | + - `lgt92`: update to new UART structure |
| 112 | + - `microbit`: remove LED constant |
| 113 | + - `microbit-v2`: add support for S113 SoftDevice |
| 114 | + - `nucleol432`: add support for this board |
| 115 | + - `nucleo-l031k6`: add this board |
| 116 | + - `pca10059`: initial support for this board |
| 117 | + - `qtpy`: fix msd-volume-name |
| 118 | + - `qtpy`: fix i2c setting |
| 119 | + - `teensy40`: move txBuffer allocation to UART declaration |
| 120 | + - `teensy40`: add UART0 as alias for UART1 |
| 121 | + |
| 122 | + |
1 | 123 | 0.17.0
|
2 | 124 |
|
3 | 125 | ---
|
|
0 commit comments