Re: Memory corruption (?) I don't understand

2021-06-22 Thread Ian Molton
On 22/06/2021 12:59, BERTRAND Joël wrote: > Hello, > > I'm writing a firmware for a board that uses a ATMega 1284. Firmware > continuously restarts This is likely a branch through zero. Common causes on AVR are bad function pointers, and stack damage. -Ian

Re: Problem linking *without* avr-libc, libm, etc. (SOLVED)

2021-06-22 Thread Ian Molton
On 01/05/2021 01:11, David Kelly wrote: > Has been a long time for me but Once Upon A Time it wasn’t just a matter > of “not using functions in the library”. AVR-gcc required primatives > other than startup code. It still does - not just on AVR - also on ARM and others. It was quite amusing when

Re: Build gcc 10.3.0 for avr on a amd64 linux host

2021-06-22 Thread Ian Molton
On 21/05/2021 20:50, BERTRAND Joël wrote: > Hello, > > I'm trying to build a recent gcc to check if my issue comes from > compiler or not. I recommend using crosstool-ng for this.

Problem linking *without* avr-libc, libm, etc.

2021-04-29 Thread Ian Molton
Hi, I'm attempting to build my project, which does not use libc, or libm, but I do want to link with libgcc. additionally, I don't want any startup code to be linked - the project is intended to be fully standalone. I've had some success with gcc 10, but I need this to work on gcc 5.4.0 as

Re: Problem linking *without* avr-libc, libm, etc.

2021-04-30 Thread Ian Molton
On 30/04/2021 10:52, dva...@internode.on.net wrote: > > Still dabbling a little with AVR once in a while, I add -nostartfiles to > Ian's -nostdlib, to avoid startup code. Aha, yes, that one went astray during my attempt to debug this :) As my most recent dabble is > -mmcu=attiny2313, with only

Re: Problem linking *without* avr-libc, libm, etc. (SOLVED)

2021-04-30 Thread Ian Molton
On 30/04/2021 09:03, David Brown wrote: > On 29/04/2021 21:43, Ian Molton wrote: >> Hi, >> >> I'm attempting to build my project, which does not use libc, or libm, >> but I do want to link with libgcc. >> >> additionally, I don't want any startup code to

Re: Wrong time.sleep if time < 17ms

2021-09-10 Thread Ian Molton
This isnt a compiler specific problem, but you might want to try disassembling the code and seeing whats different - objdump -D is your friend :) -Ian On 15/08/2021 19:30, D.Umbricht wrote: >  Hi all > I try to move a go program from a raspberry pi to an arduino uno using > tinygo on the

Re: Miscompilation (gcc + inline asmb)

2021-09-10 Thread Ian Molton
On 15/08/2021 18:34, BERTRAND Joël wrote: > I remember I have used uECC a long time ago without this kind of bug. I > have rebuilt the same code (with uECC_avr defined), but I have compiled > this library not with gcc 11.1.0, but with 5.4.0. Just curious - what is the difference in the

Re: GCC bug?

2021-12-17 Thread Ian Molton
ds, > > Bruce > > > On 12/17/2021 5:39 AM, Ian Molton wrote: >> I think you misunderstood me; >> >> I know this is where the compiler will save RAMPZ where needed. >> >> So why is it

Re: GCC bug?

2021-12-17 Thread Ian Molton
PD will be set and > "emit_push_sfr()" will never be called in the context you referenced. > > Best regards, > > Bruce > > > On 12/17/2021 1:33 PM, Ian Molton wrote: >> Ok, I don't want to sound rude, b

GCC bug?

2021-12-16 Thread Ian Molton
Browsing the GCC source, I found this in gcc/config/avr/avr.c if (AVR_HAVE_RAMPZ && TEST_HARD_REG_BIT (set, REG_Z) && TEST_HARD_REG_BIT (set, REG_Z + 1)) { emit_push_sfr (rampz_rtx, false /* frame */, AVR_HAVE_RAMPD, treg); } I wont pretend to

ISR Function prologues on AVR with Binutils and LD

2021-12-15 Thread Ian Molton
Hi, I've dug about in the sourcecode of gcc and gas, in order to understand how it works. in particular, in gas avr_patch_gccisr_frag (fragS *fr, int reg) There is behaviour, specific to AVR that allows binutils to analyse the compiler output for interrupt routines, and causes it to generate