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
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Mar 8, 2023

  1. Configuration menu
    Copy the full SHA
    c192c73 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2de64d3 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6a45b73 View commit details
    Browse the repository at this point in the history

Commits on Mar 9, 2023

  1. machine/samd51: implement Flash interface

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Mar 9, 2023
    Configuration menu
    Copy the full SHA
    51c1579 View commit details
    Browse the repository at this point in the history
  2. machine/samd51: disable/restore Flash cache on write/erase

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Mar 9, 2023
    Configuration menu
    Copy the full SHA
    0bc1973 View commit details
    Browse the repository at this point in the history

Commits on Mar 10, 2023

  1. Configuration menu
    Copy the full SHA
    7706c41 View commit details
    Browse the repository at this point in the history
  2. os,syscall: Stat_t timespec fields are Atimespec on darwin

    This allows archive/tar to build and pass.
    dgryski committed Mar 10, 2023
    Configuration menu
    Copy the full SHA
    4716298 View commit details
    Browse the repository at this point in the history
  3. syscall: add Timespec.Unix() for wasi.

    This allows archive/tar to build (but not yet pass).
    dgryski committed Mar 10, 2023
    Configuration menu
    Copy the full SHA
    cf4a6d3 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a608476 View commit details
    Browse the repository at this point in the history

Commits on Mar 11, 2023

  1. Configuration menu
    Copy the full SHA
    69e5c50 View commit details
    Browse the repository at this point in the history

Commits on Mar 12, 2023

  1. Configuration menu
    Copy the full SHA
    d610322 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    08cf2b2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    faa449a View commit details
    Browse the repository at this point in the history
  4. machine/rp2040: implement Flash interface

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Mar 12, 2023
    Configuration menu
    Copy the full SHA
    60366ad View commit details
    Browse the repository at this point in the history
  5. machine/flash: refactor to keep use of pure offset relative to start

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Mar 12, 2023
    Configuration menu
    Copy the full SHA
    5db83f1 View commit details
    Browse the repository at this point in the history
  6. machine/rp2040: correct Flash implementation

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Mar 12, 2023
    Configuration menu
    Copy the full SHA
    e6580bf View commit details
    Browse the repository at this point in the history

Commits on Mar 13, 2023

  1. builder: add test to check for changes in binary size

    This test only applies when using the built-in LLVM version. This way,
    we have a stable LLVM version to test against. Distribution versions of
    LLVM (especially Debian) tend to be patched in a way that affect the
    results.
    aykevl authored and deadprogram committed Mar 13, 2023
    Configuration menu
    Copy the full SHA
    0e94553 View commit details
    Browse the repository at this point in the history

Commits on Mar 14, 2023

  1. Configuration menu
    Copy the full SHA
    a52cad3 View commit details
    Browse the repository at this point in the history
  2. reflect: add UnsafeAddr()

    dgryski authored and aykevl committed Mar 14, 2023
    Configuration menu
    Copy the full SHA
    fb394c7 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3b27638 View commit details
    Browse the repository at this point in the history
  4. reflect: add stub for StructOf()

    dgryski authored and aykevl committed Mar 14, 2023
    Configuration menu
    Copy the full SHA
    04412cb View commit details
    Browse the repository at this point in the history
  5. debug: stub SetGCPercent()

    dgryski authored and aykevl committed Mar 14, 2023
    Configuration menu
    Copy the full SHA
    f42d8b3 View commit details
    Browse the repository at this point in the history
  6. reflect: set Index field in Field()

    dgryski authored and aykevl committed Mar 14, 2023
    Configuration menu
    Copy the full SHA
    ad9f790 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    e0aee1f View commit details
    Browse the repository at this point in the history
  8. reflect: fix off-by-one in Zero sizing

    Without this, pointers wouldn't be set to nil.  Add some tests.
    dgryski committed Mar 14, 2023
    Configuration menu
    Copy the full SHA
    069c397 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    584a271 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    a366c01 View commit details
    Browse the repository at this point in the history
  11. reflect: TypeOf(nil) should be nil

    dgryski authored and aykevl committed Mar 14, 2023
    Configuration menu
    Copy the full SHA
    6768af9 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    b044d27 View commit details
    Browse the repository at this point in the history

Commits on Mar 15, 2023

  1. Configuration menu
    Copy the full SHA
    94a54bc View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ac36f23 View commit details
    Browse the repository at this point in the history
  3. reflect: fix IsNil() for interfaces

    dgryski authored and aykevl committed Mar 15, 2023
    Configuration menu
    Copy the full SHA
    0da97e2 View commit details
    Browse the repository at this point in the history
  4. reflect: add SetBytes()

    dgryski committed Mar 15, 2023
    Configuration menu
    Copy the full SHA
    91d6ca0 View commit details
    Browse the repository at this point in the history
  5. Update src/reflect/value.go

    Co-authored-by: Ayke <aykevanlaethem@gmail.com>
    dgryski and aykevl committed Mar 15, 2023
    Configuration menu
    Copy the full SHA
    e849901 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    c672864 View commit details
    Browse the repository at this point in the history
  7. reflect: fix Type.Name to return empty string for non-named types

        // Name returns the type's name within its package for a defined type.
        // For other (non-defined) types it returns the empty string.
    dgryski committed Mar 15, 2023
    Configuration menu
    Copy the full SHA
    9f02340 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    fa4f361 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    d9c6f7c View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    15109a2 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    93fb897 View commit details
    Browse the repository at this point in the history
  12. reflect: set PkgPath in StructField

    dgryski authored and aykevl committed Mar 15, 2023
    Configuration menu
    Copy the full SHA
    1626b50 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    344e493 View commit details
    Browse the repository at this point in the history
  14. builder: fix binary size rodata value

    dgryski authored and aykevl committed Mar 15, 2023
    Configuration menu
    Copy the full SHA
    833c91f View commit details
    Browse the repository at this point in the history

Commits on Mar 16, 2023

  1. device/gba: add mostly complete hand-written register definitions

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram authored and aykevl committed Mar 16, 2023
    Configuration menu
    Copy the full SHA
    4f7864b View commit details
    Browse the repository at this point in the history
  2. machine, runtime/interrupt: switch to use register definitions from d…

    …evice/gba
    
    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram authored and aykevl committed Mar 16, 2023
    Configuration menu
    Copy the full SHA
    383e7ae View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    db08b5a View commit details
    Browse the repository at this point in the history
  4. transform: update allocs test to opaque pointers

    Also, rename most of the SSA values while we're at it.
    aykevl authored and dgryski committed Mar 16, 2023
    Configuration menu
    Copy the full SHA
    0ddd656 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f8a6e66 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    7fb2382 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    e4f29ae View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    905269b View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    ec3a4da View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    af247e2 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    e0f3333 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    4acb1a5 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    6c40ee9 View commit details
    Browse the repository at this point in the history

Commits on Mar 18, 2023

  1. machine/stm32: correct Flash implementation

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Mar 18, 2023
    Configuration menu
    Copy the full SHA
    c559863 View commit details
    Browse the repository at this point in the history
  2. compiler: support all kinds of recursive types

    Previously we only supported recursive types in structs. But there can
    be other kinds of recursive types, like slices:
    
        type RecursiveSlice []RecursiveSlice
    
    This doesn't involve structs, so it led to infinite recursion in the
    compiler. This fix avoids recursion at the proper level: at the place
    where the named type is defined.
    aykevl authored and deadprogram committed Mar 18, 2023
    Configuration menu
    Copy the full SHA
    5b42871 View commit details
    Browse the repository at this point in the history

Commits on Mar 19, 2023

  1. docker: correct path for GHCR dev container build

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Mar 19, 2023
    Configuration menu
    Copy the full SHA
    821227a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7a96f0f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    569817a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6a685b2 View commit details
    Browse the repository at this point in the history
  5. compiler: only define the package path once

    Adding tinygo-org#3534 by hand to avoid conflicts when I rebase.
    dgryski authored and deadprogram committed Mar 19, 2023
    Configuration menu
    Copy the full SHA
    0d65b4d View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    f2cc98c View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    876f089 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    229f479 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    e0329b2 View commit details
    Browse the repository at this point in the history
  10. builder: bump sizes tests

    dgryski authored and deadprogram committed Mar 19, 2023
    Configuration menu
    Copy the full SHA
    4f8127d View commit details
    Browse the repository at this point in the history
  11. reflect: stub MapOf()

    dgryski authored and deadprogram committed Mar 19, 2023
    Configuration menu
    Copy the full SHA
    24b4dc3 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    6fbe6fa View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    8fb5877 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    57b0c21 View commit details
    Browse the repository at this point in the history

Commits on Mar 21, 2023

  1. reflect: fix some vet issues

    dgryski authored and aykevl committed Mar 21, 2023
    Configuration menu
    Copy the full SHA
    4d43df7 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    17f5fb1 View commit details
    Browse the repository at this point in the history
  3. compiler: correctly generate code for local named types

    It is possible to create function-local named types:
    
        func foo() any {
            type named int
            return named(0)
        }
    
    This patch makes sure they don't alias with named types declared at the
    package scope.
    
    Bug originally found by Damian Gryski while working on reflect support.
    aykevl authored and deadprogram committed Mar 21, 2023
    Configuration menu
    Copy the full SHA
    523c6c0 View commit details
    Browse the repository at this point in the history
  4. nrf: fix memory issue in ADC read

    There was a very subtle bug in the ADC read code: it stores a pointer to
    a variable in a register, waits for the hardware to complete the read,
    and then reads the value again from the local variable. Unfortunately,
    the compiler doesn't know there is some form of synchronization
    happening in between.
    
    This can be fixed in roughly two ways:
      * Introduce some sort of synchronization.
      * Do a volatile read from the variable.
    
    I chose the second one as it is probably the least intrusive. We
    certainly don't need atomic instructions (the chip is single threaded),
    we just need to tell the compiler the value could have changed by making
    the read volatile.
    aykevl authored and deadprogram committed Mar 21, 2023
    Configuration menu
    Copy the full SHA
    5ed0cec View commit details
    Browse the repository at this point in the history
  5. compiler: add alloc attributes to runtime.alloc

    This gives a small improvement now, and is needed to be able to use the
    Heap2Stack transform that's available in the Attributor pass. This
    Heap2Stack transform could replace our custom OptimizeAllocs pass.
    
    Most of the changes are just IR that changed, the actual change is
    relatively small.
    
    To give an example of why this is useful, here is the code size before
    this change:
    
        $ tinygo build -o test -size=short ./testdata/stdlib.go
           code    data     bss |   flash     ram
          95620    1812     968 |   97432    2780
    
        $ tinygo build -o test -size=short ./testdata/stdlib.go
           code    data     bss |   flash     ram
          95380    1812     968 |   97192    2780
    
    That's a 0.25% reduction. Not a whole lot, but nice for such a small
    patch.
    aykevl authored and deadprogram committed Mar 21, 2023
    Configuration menu
    Copy the full SHA
    f180339 View commit details
    Browse the repository at this point in the history

Commits on Mar 22, 2023

  1. machine/usb: add ability to override default VID, PID, manufacturer n…

    …ame, and product name
    
    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Mar 22, 2023
    Configuration menu
    Copy the full SHA
    e8f6df9 View commit details
    Browse the repository at this point in the history
  2. examples: use hid-keyboard example to show how to to override default…

    … USB VID, PID, manufacturer name, and product name
    
    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Mar 22, 2023
    Configuration menu
    Copy the full SHA
    a4a1001 View commit details
    Browse the repository at this point in the history
  3. wasm: implement the //go:wasmimport directive

    It is implemented upstream and looks pretty stable.
    aykevl authored and deadprogram committed Mar 22, 2023
    Configuration menu
    Copy the full SHA
    62e1c3e View commit details
    Browse the repository at this point in the history
  4. Added Gopher Badge support

    conejoninja authored and deadprogram committed Mar 22, 2023
    Configuration menu
    Copy the full SHA
    4b0e56c View commit details
    Browse the repository at this point in the history

Commits on Mar 24, 2023

  1. feat: fix typos

    shivaylamba authored and dgryski committed Mar 24, 2023
    Configuration menu
    Copy the full SHA
    d73e12d View commit details
    Browse the repository at this point in the history

Commits on Mar 25, 2023

  1. Configuration menu
    Copy the full SHA
    c482d65 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    35dcf13 View commit details
    Browse the repository at this point in the history
  3. reflct: reenable DeepEqual tests

    dgryski authored and deadprogram committed Mar 25, 2023
    Configuration menu
    Copy the full SHA
    688a5db View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    45c916f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    3612b77 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    bedd27b View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    2152735 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    6cb7f29 View commit details
    Browse the repository at this point in the history
  9. reflect: fix typo in unit test

    dgryski authored and deadprogram committed Mar 25, 2023
    Configuration menu
    Copy the full SHA
    3aa8c8e View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    f7880e7 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    a5ddc68 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    adaa7ca View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    c0f8f12 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    63c7a41 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    9c0bf8b View commit details
    Browse the repository at this point in the history
  16. reflect: fix key type logic for maps

    dgryski authored and deadprogram committed Mar 25, 2023
    Configuration menu
    Copy the full SHA
    7201b13 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    360f690 View commit details
    Browse the repository at this point in the history

Commits on Mar 27, 2023

  1. Refactor SystemStack function for arm targets.

    Removing usage of AsmFull in favor of writing inline assembly in C.
    waj334 authored and deadprogram committed Mar 27, 2023
    Configuration menu
    Copy the full SHA
    a3fdbec View commit details
    Browse the repository at this point in the history
  2. Update task_stack_cortexm.c

    Added build tag.
    waj334 authored and deadprogram committed Mar 27, 2023
    Configuration menu
    Copy the full SHA
    13fb5aa View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    72c7adf View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    0b6bb12 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    855e12d View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    6b73b5e View commit details
    Browse the repository at this point in the history
  7. reflect: typo in uint test

    dgryski authored and aykevl committed Mar 27, 2023
    Configuration menu
    Copy the full SHA
    f239e8e View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    39f76f4 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    97ece75 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    2c0f61c View commit details
    Browse the repository at this point in the history
  11. reflect: use direct calls to runtime string functions

    The runtime.stringFromBytesTyped and runtime.stringToBytesTyped
    functions aren't really necessary, because they have the same LLVM IR
    signature. Therefore, remove them and link directly to the functions
    that the compiler uses internally.
    aykevl authored and deadprogram committed Mar 27, 2023
    Configuration menu
    Copy the full SHA
    3104362 View commit details
    Browse the repository at this point in the history

Commits on Mar 28, 2023

  1. compiler: only support //go:wasmimport on declared functions

    Don't support this pragma on defined functions. It is only meant for
    importing, not for exporting.
    aykevl authored and deadprogram committed Mar 28, 2023
    Configuration menu
    Copy the full SHA
    17bc0d6 View commit details
    Browse the repository at this point in the history
  2. fix resource leak in os.(*File).Close

    Signed-off-by: Achille Roussel <achille.roussel@gmail.com>
    achille-roussel authored and deadprogram committed Mar 28, 2023
    Configuration menu
    Copy the full SHA
    85da9a0 View commit details
    Browse the repository at this point in the history
  3. machine/lorae5: correct mapping for I2C bus, add pin mapping to enabl…

    …e power
    
    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Mar 28, 2023
    Configuration menu
    Copy the full SHA
    dfb8c99 View commit details
    Browse the repository at this point in the history

Commits on Mar 29, 2023

  1. Configuration menu
    Copy the full SHA
    c611c72 View commit details
    Browse the repository at this point in the history
  2. rp2040: remove SPI DataBits property

    As discussed on Slack, I believe this property does more harm than good:
    
      * I don't think it's used anywhere. None of the drivers use it.
      * It is not fully implemented. While values <= 8 might work fine,
        values larger than 8 result in extra zero bits (instead of anything
        sensible).
      * Worse, it doesn't return an error when it's out of range. This is
        not an optional property: if the SPI peripheral doesn't support a
        particular number of bits, it should return an error instead of
        silently limiting the number of bits. This will be confusing to
        users.
    
    Therefore, I propose we drop it. Maybe there are good uses for it
    (perhaps for displays that use big endian 16-bit values?), but without a
    good use case like a driver in tinygo.org/x/drivers, I think it's more
    trouble than it's worth.
    aykevl authored and deadprogram committed Mar 29, 2023
    Configuration menu
    Copy the full SHA
    568c2a4 View commit details
    Browse the repository at this point in the history
  3. compiler: implement most math/bits functions

    These functions can be implemented more efficiently using LLVM
    intrinsics. That makes them the Go equivalent of functions like
    __builtin_clz which are also implemented using these LLVM intrinsics.
    
    I believe the Go compiler does something very similar: IIRC it converts
    calls to these functions into optimal instructions for the given
    architecture.
    
    I tested these by running `tinygo test math/bits` after uncommenting the
    tests that would always fail (the *PanicZero and *PanicOverflow tests).
    aykevl authored and deadprogram committed Mar 29, 2023
    Configuration menu
    Copy the full SHA
    464ebc4 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    5fee342 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    cb9c6f0 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    a3afd4e View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    bf20c65 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    4e4e4ee View commit details
    Browse the repository at this point in the history

Commits on Mar 30, 2023

  1. build: add GH workflow to build LLVM image when needed

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Mar 30, 2023
    Configuration menu
    Copy the full SHA
    1213a45 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3fbd3c4 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1a60a1f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    e7bd22e View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    53b95ca View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    181d2ad View commit details
    Browse the repository at this point in the history
  7. reflect: fix TestCanSetField

    dgryski authored and deadprogram committed Mar 30, 2023
    Configuration menu
    Copy the full SHA
    017ab4c View commit details
    Browse the repository at this point in the history
  8. reflect: TestAliasNames passes

    dgryski authored and deadprogram committed Mar 30, 2023
    Configuration menu
    Copy the full SHA
    a11f243 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    d4bdd83 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    195de23 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    5faff2e View commit details
    Browse the repository at this point in the history
  12. reflect: add valueFlagRO

    dgryski authored and deadprogram committed Mar 30, 2023
    Configuration menu
    Copy the full SHA
    0cd93a3 View commit details
    Browse the repository at this point in the history
  13. reflect: add more RO checks

    dgryski authored and deadprogram committed Mar 30, 2023
    Configuration menu
    Copy the full SHA
    b044d4f View commit details
    Browse the repository at this point in the history
  14. rp2040: unify all linker scripts using LDFLAGS

    The only thing that's different between all these chips is the flash
    size, which can easily be passed as a linker flag instead. This removes
    a bunch of duplicate code in an uncommon language (linker script).
    
    I've also fixed a few boards with incorrect flash sizes:
    
      * nano-rp2040 has 16MB instead of 2MB
      * macropad-rp2040 has 8MB instead of 2MB
      * gopher-badge has 8MB instead of 1MB
    aykevl authored and deadprogram committed Mar 30, 2023
    Configuration menu
    Copy the full SHA
    e0bf376 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    b39a982 View commit details
    Browse the repository at this point in the history
  16. reflect: another obscure RO bug

    dgryski authored and deadprogram committed Mar 30, 2023
    Configuration menu
    Copy the full SHA
    e6ccdd9 View commit details
    Browse the repository at this point in the history

Commits on Mar 31, 2023

  1. testing: support -test.count

    This makes running benchmarks repeatedly easier.
    dgryski authored and deadprogram committed Mar 31, 2023
    Configuration menu
    Copy the full SHA
    698b1f1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a2f95d6 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9182664 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    84a3273 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4a81cac View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    d50c54f View commit details
    Browse the repository at this point in the history
  7. main: set WASMTIME_BACKTRACE_DETAILS when running in wasmtime.

    I find myself consistently running tests, seeing them panic, and then
    immediately running them again with this environment variable set.  It's
    easier to just have tinygo do this for me.
    dgryski committed Mar 31, 2023
    Configuration menu
    Copy the full SHA
    50d6813 View commit details
    Browse the repository at this point in the history

Commits on Apr 1, 2023

  1. Configuration menu
    Copy the full SHA
    ee81c31 View commit details
    Browse the repository at this point in the history
  2. testing: add test.skip

    dgryski committed Apr 1, 2023
    Configuration menu
    Copy the full SHA
    63aaa43 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    66d3c4e View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    8badf79 View commit details
    Browse the repository at this point in the history
  5. rp2040: remove SPI deadline

    Removing it improves SPI performance by about 20% for me (updating the
    display of a Gopher Badge).
    aykevl authored and deadprogram committed Apr 1, 2023
    Configuration menu
    Copy the full SHA
    6eda52a View commit details
    Browse the repository at this point in the history
  6. reflect: handle Convert'ing between identical underlying types

    Needed for go-jose/v3
    dgryski authored and aykevl committed Apr 1, 2023
    Configuration menu
    Copy the full SHA
    60bb832 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    a85cb22 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    0c4f9d1 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    9e7882b View commit details
    Browse the repository at this point in the history
  10. rp2040: use 4MHz as default frequency for SPI

    This matches other SPI implementations. I think the original value of
    115200 was from a confusion with UART.
    aykevl authored and deadprogram committed Apr 1, 2023
    Configuration menu
    Copy the full SHA
    7d83e76 View commit details
    Browse the repository at this point in the history

Commits on Apr 2, 2023

  1. machine/usb/hid/joystick: move joystick under HID as it belongs and a…

    …lso remove duplicate code
    
    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Apr 2, 2023
    Configuration menu
    Copy the full SHA
    9e97566 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    71b44e7 View commit details
    Browse the repository at this point in the history

Commits on Apr 3, 2023

  1. samd51: use correct SPI frequency

    The SPI frequency was rounded up, not rounded down. This meant that if
    you wanted to configure 15MHz for example, it would pick the next
    available frequency (24MHz). That's unsafe, the safe option is to round
    down and the SPI support for most other chips also rounds down for this
    reason.
    
    In addition, I've improved SPI clock selection so that it will pick the
    best clock of the two, widening the available frequencies. See the
    comments in the patch for details.
    aykevl authored and deadprogram committed Apr 3, 2023
    Configuration menu
    Copy the full SHA
    19e4db4 View commit details
    Browse the repository at this point in the history

Commits on Apr 4, 2023

  1. Configuration menu
    Copy the full SHA
    4bf7308 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    feadb9c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e0385e4 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    ad3e9e1 View commit details
    Browse the repository at this point in the history
  5. rp2040: use DMA for send-only SPI transfers

    This improves slightly. It also is some groundwork for better DMA
    support in TinyGo in the future.
    
    I'm not entirely sure why it improves performance (in theory the old
    code should already saturate the SPI bus) but it does, so 🤷
    aykevl authored and deadprogram committed Apr 4, 2023
    Configuration menu
    Copy the full SHA
    3b4e543 View commit details
    Browse the repository at this point in the history

Commits on Apr 10, 2023

  1. Configuration menu
    Copy the full SHA
    4217549 View commit details
    Browse the repository at this point in the history

Commits on Apr 11, 2023

  1. testing: fix benchmark logging output

    dgryski authored and deadprogram committed Apr 11, 2023
    Configuration menu
    Copy the full SHA
    e00a239 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1672610 View commit details
    Browse the repository at this point in the history

Commits on Apr 12, 2023

  1. Configuration menu
    Copy the full SHA
    4326c8f View commit details
    Browse the repository at this point in the history
  2. compiler: update test outputs

    dgryski committed Apr 12, 2023
    Configuration menu
    Copy the full SHA
    60b23a7 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0244bed View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2b1dc4f View commit details
    Browse the repository at this point in the history

Commits on Apr 16, 2023

  1. Switch interp tests to opaque pointers

    QuLogic authored and aykevl committed Apr 16, 2023
    Configuration menu
    Copy the full SHA
    b4c9b57 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8b9bee4 View commit details
    Browse the repository at this point in the history

Commits on Apr 17, 2023

  1. examples: replace fmt with encoding/hex in usb-midi example

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Apr 17, 2023
    Configuration menu
    Copy the full SHA
    48ef68d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1bba5f5 View commit details
    Browse the repository at this point in the history

Commits on Apr 18, 2023

  1. samd51: fix ADC multisampling

    Multisampling/averaging (using the Samples configuration property) was
    returning incorrect values. When I investigated this, I found that the
    samd51 gives erratic values when using multisampling together with fewer
    than 16 bits resolution.
    
    I fixed this by forcing 16 bit resolution when multisampling, and
    adjusting the output to account for multisampling.
    
    Found while reading the battery value on a pybadge, which gave
    non-sensible values with Samples set to a value larger than 1.
    aykevl authored and deadprogram committed Apr 18, 2023
    Configuration menu
    Copy the full SHA
    64957c5 View commit details
    Browse the repository at this point in the history
  2. fix some comments

    Signed-off-by: cui fliter <imcusg@gmail.com>
    cuishuang authored and deadprogram committed Apr 18, 2023
    Configuration menu
    Copy the full SHA
    4e9f9e2 View commit details
    Browse the repository at this point in the history

Commits on Apr 22, 2023

  1. Configuration menu
    Copy the full SHA
    06e34ca View commit details
    Browse the repository at this point in the history

Commits on Apr 24, 2023

  1. device/gba: additional IO mapping for sound, DMA, SIO, and sprites

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram authored and aykevl committed Apr 24, 2023
    Configuration menu
    Copy the full SHA
    79b63dd View commit details
    Browse the repository at this point in the history

Commits on Apr 25, 2023

  1. Configuration menu
    Copy the full SHA
    af9f196 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7aac1a1 View commit details
    Browse the repository at this point in the history
  3. machine/gba: rename display and make pointer receivers

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram authored and aykevl committed Apr 25, 2023
    Configuration menu
    Copy the full SHA
    c89a684 View commit details
    Browse the repository at this point in the history
  4. Revert "all: honour port for -monitor flash flag"

    This reverts commit 7aac1a1.
    deadprogram committed Apr 25, 2023
    Configuration menu
    Copy the full SHA
    4bf8b61 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    76303f9 View commit details
    Browse the repository at this point in the history
  6. Add machine.CPUReset() (tinygo-org#3595)

    machine: Add machine.CPUReset() for cortexm
    scottfeldman committed Apr 25, 2023
    Configuration menu
    Copy the full SHA
    5983833 View commit details
    Browse the repository at this point in the history

Commits on Apr 26, 2023

  1. runtime: print the address where a panic happened

    This is not very useful in itself, but makes it possible to detect this
    address in the output. See the next commit.
    
    This adds around 50 bytes to each binary (except for AVR and wasm). This
    is unfortunate, but I think this feature is quite useful still.
    A future enhancement might be to create a build tag for extended panic
    information that's not set by default.
    aykevl authored and deadprogram committed Apr 26, 2023
    Configuration menu
    Copy the full SHA
    3392827 View commit details
    Browse the repository at this point in the history
  2. main: print source location when a panic happens in -monitor

    The previous commit started printing the instruction address for runtime
    panics. This commit starts using this address to print the source
    location.
    
    Here is an example where this feature is very useful. There is a heap
    allocation in the Bluetooth package, but we don't know where exactly.
    Printing the instruction address of the panic is already useful, but
    what is even more useful is looking up this address in the DWARF debug
    information that's part of the binary:
    
        $ tinygo flash -target=circuitplay-bluefruit -monitor ./examples/heartrate
        Connected to /dev/ttyACM0. Press Ctrl-C to exit.
        tick 00:00.810
        tick 00:01.587
        tick 00:02.387
        tick 00:03.244
        panic: runtime error at 0x00027c4d: alloc in interrupt
        [tinygo: panic at /home/ayke/src/tinygo/bluetooth/adapter_sd.go:74:4]
    
    To be clear, this path isn't stored on the microcontroller. It's stored
    as part of the build, and `-monitor` just looks up the path from the
    panic message.
    
    Possible enhancements:
    
      - Print such an address for regular panics as well. I'm not sure
        that's so useful, as it's usually a lot easier to look up panics
        just by their message.
      - Use runtimePanicAt (instead of runtimePanic) in other locations, if
        that proves to be beneficial.
      - Print the TinyGo-generated output in some other color, to
        distinguish it from the regular console output.
      - Print more details when panicking (registers, stack values), and
        print an actual backtrace.
    aykevl authored and deadprogram committed Apr 26, 2023
    Configuration menu
    Copy the full SHA
    ae381e7 View commit details
    Browse the repository at this point in the history
  3. runtime: improve panic message when heap allocating in an interrupt

    The old message may have been confusing. With the new message, it should
    be more clear that we mean a _heap_ allocation.
    aykevl authored and deadprogram committed Apr 26, 2023
    Configuration menu
    Copy the full SHA
    0b2aec1 View commit details
    Browse the repository at this point in the history
  4. cortexm: add "gdb" as a debugger

    At least on Arch Linux ARM, there is no gdb-multiarch or something, just
    "gdb" and it works for 32-bit ARM as well.
    aykevl authored and deadprogram committed Apr 26, 2023
    Configuration menu
    Copy the full SHA
    7e05c92 View commit details
    Browse the repository at this point in the history
  5. cortexm: fix stack size offset

    The old code was broken and led to a HardFault in a rather convoluted
    way:
    
     1. The CFA offset was incorrect, in fact it was not aligned (the stack
        is supposed to always be aligned to 4 bytes at least).
     2. This unaligned size was then used for stack size calculations.
     3. A stack that wasn't a multiple of 4 was allocated.
     4. The calleeSavedRegs struct (in `(internal/task.state).archInit`) was
        not correctly aligned.
     5. Writing to this struct resulted in a HardFault.
    aykevl authored and deadprogram committed Apr 26, 2023
    Configuration menu
    Copy the full SHA
    839edec View commit details
    Browse the repository at this point in the history

Commits on Apr 27, 2023

  1. builder: add link to compatibility matrix

    For context, see: tinygo-org/tinygo-site#327
    
    It only needs to be updated every half year, so it's not too bad, and it
    could be very useful to some people.
    aykevl committed Apr 27, 2023
    Configuration menu
    Copy the full SHA
    9bf5d6a View commit details
    Browse the repository at this point in the history
  2. docs: update LICENSE year

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Apr 27, 2023
    Configuration menu
    Copy the full SHA
    9d7dd3d View commit details
    Browse the repository at this point in the history
  3. docs: update README for brevity and to add further info about webasse…

    …mbly
    
          also, add links to guides about OS-specific development on website
          for macOS and Windows.
    
    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Apr 27, 2023
    Configuration menu
    Copy the full SHA
    36bd66a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4c0fbbf View commit details
    Browse the repository at this point in the history
  5. builder: bump sizes test values

    dgryski authored and deadprogram committed Apr 27, 2023
    Configuration menu
    Copy the full SHA
    6a2dd35 View commit details
    Browse the repository at this point in the history

Commits on Apr 28, 2023

  1. machine/usb: refactoring descriptors into subpackage for modularity

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Apr 28, 2023
    Configuration menu
    Copy the full SHA
    2ab7ee6 View commit details
    Browse the repository at this point in the history
  2. machine/usb/hid/joystick: handle case where we cannot find the correc…

    …t HID descriptor
    
    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Apr 28, 2023
    Configuration menu
    Copy the full SHA
    25b0341 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d28b58e View commit details
    Browse the repository at this point in the history

Commits on Apr 29, 2023

  1. machine/usb: move MIDI under usb/adc (Audio Device Class) package

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Apr 29, 2023
    Configuration menu
    Copy the full SHA
    c70daa2 View commit details
    Browse the repository at this point in the history
  2. examples/usb-midi: remove serial communication from MIDI example

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed Apr 29, 2023
    Configuration menu
    Copy the full SHA
    1a67795 View commit details
    Browse the repository at this point in the history

Commits on May 3, 2023

  1. syscall: add fsync using libc

    Signed-off-by: Achille Roussel <achille.roussel@gmail.com>
    achille-roussel authored and deadprogram committed May 3, 2023
    Configuration menu
    Copy the full SHA
    4fa6a13 View commit details
    Browse the repository at this point in the history
  2. os: add os.(*File).Sync

    Signed-off-by: Achille Roussel <achille.roussel@gmail.com>
    achille-roussel authored and deadprogram committed May 3, 2023
    Configuration menu
    Copy the full SHA
    ccfe92a View commit details
    Browse the repository at this point in the history
  3. implement Sync on stdioFileHandle

    Signed-off-by: Achille Roussel <achille.roussel@gmail.com>
    achille-roussel authored and deadprogram committed May 3, 2023
    Configuration menu
    Copy the full SHA
    666312f View commit details
    Browse the repository at this point in the history
  4. os: implement os.(*File).ReadDir for -target=wasi

    Signed-off-by: Achille Roussel <achille.roussel@gmail.com>
    achille-roussel authored and deadprogram committed May 3, 2023
    Configuration menu
    Copy the full SHA
    ee3af40 View commit details
    Browse the repository at this point in the history

Commits on May 4, 2023

  1. cgo: allow LDFLAGS: --export=...

    Signed-off-by: Edoardo Vacchi <evacchi@users.noreply.github.com>
    evacchi authored and aykevl committed May 4, 2023
    Configuration menu
    Copy the full SHA
    4e41e90 View commit details
    Browse the repository at this point in the history
  2. tools: add sizediff tool

    This tool can be very useful to compare binary sizes as output by
    `-size=short`.
    
    This is a tool I wrote a while ago. It's not perfect (we should probably
    use a geomean) but it works well enough to get a good idea on the binary
    size impact of a change.
    aykevl committed May 4, 2023
    Configuration menu
    Copy the full SHA
    e4da354 View commit details
    Browse the repository at this point in the history

Commits on May 5, 2023

  1. machine/usb/descriptor: refactor HID report creation

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed May 5, 2023
    Configuration menu
    Copy the full SHA
    d8ee520 View commit details
    Browse the repository at this point in the history
  2. machine/usb/descriptor: rename and export Append() to make it easier …

    …to create new descriptors in user code
    
    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed May 5, 2023
    Configuration menu
    Copy the full SHA
    9093570 View commit details
    Browse the repository at this point in the history
  3. machine/usb/descriptor: further refactor HID report creation

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed May 5, 2023
    Configuration menu
    Copy the full SHA
    1d5c5ca View commit details
    Browse the repository at this point in the history
  4. os: implement os.(*File).WriteAt (tinygo-org#3697)

    os: implement os.(*File).WriteAt
    
    Signed-off-by: Achille Roussel <achille.roussel@gmail.com>
    achille-roussel committed May 5, 2023
    Configuration menu
    Copy the full SHA
    602f35a View commit details
    Browse the repository at this point in the history

Commits on May 6, 2023

  1. Add dummy package for runtime/metrics to that modules that depend u…

    …pon it (e.g. [Prometheus Go client library](https://github.com/prometheus/client_golang/blob/main/prometheus/internal/go_runtime_metrics.go)) will compile.
    
    Avoids:
    ```console
    package runtime/metrics is not in GOROOT
    ```
    
    Fixes tinygo-org#3705
    DazWilkin authored and aykevl committed May 6, 2023
    Configuration menu
    Copy the full SHA
    373ab34 View commit details
    Browse the repository at this point in the history
  2. machine/atsam*, nrf, rp2040, stm32: correct error flashBlockDevice pa…

    …d() function
    
    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed May 6, 2023
    Configuration menu
    Copy the full SHA
    e736396 View commit details
    Browse the repository at this point in the history
  3. machine/rp2040: correct param for number of bytes to be erased by flash

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed May 6, 2023
    Configuration menu
    Copy the full SHA
    7e8a2e8 View commit details
    Browse the repository at this point in the history
  4. machine/rp2040: correct write block size for flash

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed May 6, 2023
    Configuration menu
    Copy the full SHA
    d331aca View commit details
    Browse the repository at this point in the history

Commits on May 7, 2023

  1. machine/usb/hid: fix hidreport

    sago35 authored and deadprogram committed May 7, 2023
    Configuration menu
    Copy the full SHA
    14fed59 View commit details
    Browse the repository at this point in the history

Commits on May 9, 2023

  1. pinetime: update the target file

      * Rename pinetime-devkit0 to pinetime because the production device is
        almost the same hardware (the only noticeable difference is a
        different accelerometer, which isn't part of the board file).
      * Remove the UART and set serial to none. The UART uses a lot of
        current by default, so it seems better to disable it.
    
    This is a breaking change, but honestly I think I'm the only one who has
    ever actually used TinyGo for the PineTime and I'm fine with this
    change :)
    aykevl authored and deadprogram committed May 9, 2023
    Configuration menu
    Copy the full SHA
    20fdbc1 View commit details
    Browse the repository at this point in the history
  2. nrf: refactor ADC code a little bit

      * Initialize the ADC in Configure() (instead of in Get()).
      * Do not set all channels to "not connected" - that's already the
        reset value.
      * Don't disable the ADC after use. It's not necessary to disable
        (current consumption appears to remain the same whether enabled or
        disabled).
    aykevl authored and deadprogram committed May 9, 2023
    Configuration menu
    Copy the full SHA
    e5af121 View commit details
    Browse the repository at this point in the history
  3. nrf: add ability to set the reference voltage

    The reference voltage can't be 3.3V, so we pick 3.0V as this was the
    previous default.
    aykevl authored and deadprogram committed May 9, 2023
    Configuration menu
    Copy the full SHA
    e82f595 View commit details
    Browse the repository at this point in the history
  4. nrf: add sample time to ADC

    This is important for inputs with a high input resistance. In those
    cases, the sample time needs to be longer.
    aykevl authored and deadprogram committed May 9, 2023
    Configuration menu
    Copy the full SHA
    8688127 View commit details
    Browse the repository at this point in the history
  5. nrf: add ADC oversampling support

    This is a lot easier to support than on other chips, and results in
    noticeably better output when set to a higher value.
    aykevl authored and deadprogram committed May 9, 2023
    Configuration menu
    Copy the full SHA
    f4c8c37 View commit details
    Browse the repository at this point in the history

Commits on May 13, 2023

  1. builder: implement Nordic DFU file writer in Go

    This avoids a dependency on nrfutil. I have verified that it creates
    equivalent zip files to a wasp-os DFU zip file I downloaded here:
    https://github.com/wasp-os/wasp-os/releases/
    I have also tested that it produces valid DFU files that can be uploaded
    using the dfu.py program here to my PineTime:
    https://github.com/wasp-os/ota-dfu-python/tree/3d6fd30d33c2b20bc86ff6b9269fddf4a1d4c7c6
    
    There are some minor differences in the generated file that should not
    matter in practice (JSON whitespace, firmware file name, zip
    compression).
    aykevl authored and deadprogram committed May 13, 2023
    Configuration menu
    Copy the full SHA
    6435f62 View commit details
    Browse the repository at this point in the history

Commits on May 14, 2023

  1. machine/flash: remove FlashBuffer, modify flash example to use BlockD…

    …evice interface
    
    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed May 14, 2023
    Configuration menu
    Copy the full SHA
    b56a263 View commit details
    Browse the repository at this point in the history
  2. machine/usb/hid: fix hidreport (2)

    sago35 authored and deadprogram committed May 14, 2023
    Configuration menu
    Copy the full SHA
    d1a45f2 View commit details
    Browse the repository at this point in the history
  3. ci: add comment with binary size difference

    This makes reviewing PRs a lot easier because I don't have to run this
    myself :)
    
    This only uses the drivers repo so far, which is a good starting point
    but doesn't include binary size changes for WebAssembly for example. A
    future change could add some real-world programs to get a better idea of
    the real-world impact.
    
    To be clear: the intention is not to just look at the number at the
    bottom. It is important to look at the actual size difference to see the
    overall pattern (like, the difference may be due to a few outlier).
    aykevl authored and deadprogram committed May 14, 2023
    Configuration menu
    Copy the full SHA
    af936f3 View commit details
    Browse the repository at this point in the history
  4. reflect: optimize Zero() a little bit

    It could be expensive to call Size() three times, and it is unnecessary.
    Instead, do it only once.
    
    This results in a very small reduction of binary size if Zero() is used.
    aykevl authored and deadprogram committed May 14, 2023
    Configuration menu
    Copy the full SHA
    535e64a View commit details
    Browse the repository at this point in the history

Commits on May 16, 2023

  1. build: add write permission to sizediff GH actions job to always be a…

    …ble to add comments
    
    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed May 16, 2023
    Configuration menu
    Copy the full SHA
    0291356 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    07fb3a0 View commit details
    Browse the repository at this point in the history
  3. builder: bump sizes_test

    dgryski authored and deadprogram committed May 16, 2023
    Configuration menu
    Copy the full SHA
    f55bb8e View commit details
    Browse the repository at this point in the history
  4. runtime: fix structField.data comment

    dgryski authored and deadprogram committed May 16, 2023
    Configuration menu
    Copy the full SHA
    e3c9680 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    d256804 View commit details
    Browse the repository at this point in the history
  6. machine: add DefaultUART to xiao

    sago35 authored and deadprogram committed May 16, 2023
    Configuration menu
    Copy the full SHA
    cdbd850 View commit details
    Browse the repository at this point in the history
  7. windows: re-enable parallelism

    This reverts tinygo-org#3525, because
    that change didn't seem to stop the CI failures we have been seeing.
    Instead, I've added thread support in
    tinygo-org#3130 which IIRC fixed most of
    the CI crashes.
    
    Re-enabling parallelism should improve the performance of TinyGo a bit
    on Windows.
    aykevl authored and deadprogram committed May 16, 2023
    Configuration menu
    Copy the full SHA
    af76c80 View commit details
    Browse the repository at this point in the history

Commits on May 17, 2023

  1. compileopts: don't filter build tags, use specific build tags instead

    This basically reverts tinygo-org#3357
    and replaces it with a different mechanism to get to the same goal.
    
    I do not think filtering tags like this is a good idea: it's the wrong
    part of the compiler to be concerned with such tags (that part sets
    tags, but doesn't modify existing tags). Instead, I've written the
    //go:build lines in such a way that it has the same effect: WASI
    defaults to leveldb, everything else defaults to fnv, and it's possible
    to override the default using build tags.
    aykevl authored and deadprogram committed May 17, 2023
    Configuration menu
    Copy the full SHA
    4c68268 View commit details
    Browse the repository at this point in the history
  2. build: update GH actions-comment-pull-request to v2.3.1

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed May 17, 2023
    Configuration menu
    Copy the full SHA
    b336a15 View commit details
    Browse the repository at this point in the history

Commits on May 20, 2023

  1. compiler: only calculate functionInfo once

    This is a small change that's not really important in itself, but it
    avoids duplicate errors in a future commit that adds error messages to
    //go:wasmimport.
    aykevl authored and deadprogram committed May 20, 2023
    Configuration menu
    Copy the full SHA
    6dba16f View commit details
    Browse the repository at this point in the history
  2. compiler: add tests for error messages

    The test is currently empty, but will be used in the next commit.
    aykevl authored and deadprogram committed May 20, 2023
    Configuration menu
    Copy the full SHA
    41e787d View commit details
    Browse the repository at this point in the history
  3. compiler: disallow most types in //go:wasmimport

    This is for compatibility with upstream Go.
    See golang/go#59149 for more context.
    aykevl authored and deadprogram committed May 20, 2023
    Configuration menu
    Copy the full SHA
    b08ff17 View commit details
    Browse the repository at this point in the history
  4. build: add issues write permission to sizediff job

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed May 20, 2023
    Configuration menu
    Copy the full SHA
    1b66da4 View commit details
    Browse the repository at this point in the history
  5. add Settings to debug.BuildInfo

    Signed-off-by: Rajat Jindal <rajatjindal83@gmail.com>
    rajatjindal authored and aykevl committed May 20, 2023
    Configuration menu
    Copy the full SHA
    572c22f View commit details
    Browse the repository at this point in the history
  6. avr: fix interrupt names for newer attiny chips

    This only affects chips that aren't supported by TinyGo yet, so this
    should be a safe change. Importantly, it fixes interrupts on the
    ATtiny1616.
    aykevl authored and deadprogram committed May 20, 2023
    Configuration menu
    Copy the full SHA
    b43bd9e View commit details
    Browse the repository at this point in the history
  7. avr: update gen-device-avr tool to support newer AVRs

    This refactors gen-device-avr to output two different formats: one for
    all the existing AVR chips (that don't really have the concept of a
    peripheral, just a bunch of registers), and one for all the new chips
    like the ATtiny1616 (tinyAVR 1-series and 2-series) that have
    peripherals like the Cortex-M chips with type structs and instances.
    
    I checked the generated code for all the AVR chips we have support for
    (atmega1280, atmega1284p, atmega2560, atmega328p, atmega32u4, attiny85)
    and while the generated Go code did change, it looks safe to me.
    aykevl authored and deadprogram committed May 20, 2023
    Configuration menu
    Copy the full SHA
    4d11d55 View commit details
    Browse the repository at this point in the history
  8. avr: add attiny1616 support

    This is just support for the chip, no boards are currently supported.
    However, you can use this target on a custom board.
    
    Notes:
    
      - This required a new runtime and machine implementation, because the
        hardware is actually very different (and much nicer than older
        AVRs!).
      - I had to update gen-device-avr to support this chip. This also
        affects the generated output of other AVRs, but I checked all chips
        we support and there shouldn't be any backwards incompatible
        changes.
      - I did not implement peripherals like UART, I2C, SPI, etc because I
        don't need them. That is left to do in the future.
    
    You can flash these chips with only a UART and a 1kOhm resistor, which
    is really nice (no special hardware needed). Here is the program I've
    used for this purpose: https://pypi.org/project/pymcuprog/
    aykevl authored and deadprogram committed May 20, 2023
    Configuration menu
    Copy the full SHA
    2fb866c View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    54c07b7 View commit details
    Browse the repository at this point in the history
  10. interp: fix subtle bug in pointer xor

    If a pointer value was xor'ed with a value other than 0, it would not
    have been run at runtime but instead would fall through to the generic
    integer operations. This would likely result in a "cannot convert
    pointer to integer" panic.
    
    This commit fixes this subtle case.
    aykevl authored and deadprogram committed May 20, 2023
    Configuration menu
    Copy the full SHA
    cf39db3 View commit details
    Browse the repository at this point in the history
  11. interp: add support for reading a pointer tag

    This is necessary to get tinygo-org#3691
    working.
    aykevl authored and deadprogram committed May 20, 2023
    Configuration menu
    Copy the full SHA
    481f60c View commit details
    Browse the repository at this point in the history

Commits on May 21, 2023

  1. attiny1616: implement Pin.Get()

    I didn't add this method in the initial PR.
    
    Also, I found that a few of my assumptions were incorrect. I've changed
    the code that configures the pin to make input (floating and pullup)
    actually work. These chips really are quite different from all the older
    AVRs.
    aykevl authored and deadprogram committed May 21, 2023
    Configuration menu
    Copy the full SHA
    da81784 View commit details
    Browse the repository at this point in the history

Commits on May 23, 2023

  1. build: explicitly pass the github token to GH action

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed May 23, 2023
    Configuration menu
    Copy the full SHA
    f366cd5 View commit details
    Browse the repository at this point in the history

Commits on May 29, 2023

  1. samd21: fix issue with WS2812 driver

    The regular port access is around 4 cycles, instead of the usual 2
    cycles for a store instruction on Cortex-M0+. The IOBUS however is
    faster, I didn't measure exactly but I guess it's 2 cycles as expected.
    
    This fixes a bug in the WS2812 driver that only happens on samd21 chips:
    tinygo-org/drivers#540
    aykevl authored and deadprogram committed May 29, 2023
    Configuration menu
    Copy the full SHA
    b7b23ac View commit details
    Browse the repository at this point in the history
  2. fix go:noinlines in volatile package

    soypat authored and deadprogram committed May 29, 2023
    Configuration menu
    Copy the full SHA
    bcdb3fc View commit details
    Browse the repository at this point in the history

Commits on May 31, 2023

  1. build: only make comment on sizediff job when run from the main repo

    Signed-off-by: deadprogram <ron@hybridgroup.com>
    deadprogram committed May 31, 2023
    Configuration menu
    Copy the full SHA
    ee90bde View commit details
    Browse the repository at this point in the history

Commits on Jun 1, 2023

  1. Configuration menu
    Copy the full SHA
    635d322 View commit details
    Browse the repository at this point in the history

Commits on Jun 2, 2023

  1. Configuration menu
    Copy the full SHA
    09c8348 View commit details
    Browse the repository at this point in the history