Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-devel

fpc-devel · 2022-01

  1. Questions regarding m68k-atari target

    Hi (I'm new to this list so please forgive me if i'm asking questions that have already been answered elsewhere, and just point me to the right direction) Inspired by…

    Thorsten Otto, Florian Klämpfl, Karoly Balogh
    54
  2. Peephole optimizer passes

    So I've found with the peephole optimizer, at least on x86, that if you run pass 2 more than once, it often catches even more optimisations that otherwise get missed. …

    J. Gareth Moreton
    1
  3. syshelpers patches

    [Probably for @mvancanneyt] I have just submitted patches for syshelpers here: https://gitlab.com/freepascal.org/fpc/source/-/issues/39268#note_810963784 It's a closed…

    Zeljko Avramovic, Michael Van Canneyt
    4
  4. Question on IsMemoryManagerSet logic

    Trying to detect at unit initialization if a memory manager has been installed (xtensa-freertos) fails on FreeRTOS target. It appears that IsMemoryManagerSet[1] always…

    Christo Crause
    0
  5. Any word on this ARM / AArch64 optimisation?

    Any word on the validity of this ARM / AArch64 optimisation? It's quite good at increasing speed and shrinking code size by concatenating writes to the stack, among…

    J. Gareth Moreton, Florian Klämpfl
    2
  6. Issue 3.2.3 (ok in 3.3.1) Win64 "raise exception" does not go to "except"

    In the  below code compiled with 3.2.3 (today and early Dec) when the exception is reached the app exits. There is no code from finally, nor from except block executed.…

    Martin Frb, Florian Klämpfl, J. Gareth Moreton
    3
  7. I've asked this before, but perhaps I wasn't specific enough that time: what do I *personally*, specifically need to do to ensure that a native Windows 64-bit build winds up on the FPC website for the next release?

    To be very clear, to me, this is absolutely nothing more than just a matter of building the compiler completely normally. It takes like two minutes all-in. I don't…

    Ben Grasset, Alexander Grotewohl, Bart
    59
  8. Proposed new utility functions for x86 peephole optimiser (and maybe others)

    During my implementation of a new optimisation, https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/136, which merges some references, Florian asked me to make…

    J. Gareth Moreton
    1
  9. Plans for 2022

    Some people requested a Patreon post as to my plans for 2022 with FPC, so I was happy to oblige.  Plans may change a bit though depending on what happens in life and…

    J. Gareth Moreton, Christo Crause, Florian Klämpfl
    7
  10. @Gareth - Feedback on optimizations

    Just thought this may be interesting. Though the results are for "eyeballing" at best -- see the video linked in Jonas' recent mail:…

    Martin Frb, Florian Klämpfl
    2
  11. Double-checking an optimisation

    So a merge request of mine was just approved that allows the peephole optimizer access to more registers when it needs one for temporary storage.  It allows it to make…

    J. Gareth Moreton, Florian Klämpfl, Martin Frb
    7
  12. Val() with unsigned variable

    There's been a hot debate in the bugtracker about fixing Val() for signed variables. There's a patch (in fact there are several), and an attempt to speed Val() up…

    Bart
    0
  13. Now sure why this raises Runtime Error 216

    Without SetLength(var,0) at the end I get Runtime Error 216 once, adding those - assuming FPC now required me to zero out those fields, I now get the error twice. Code:…

    Ozz Nixon, Michael Van Canneyt
    3
  14. Is the ARM/AArch64 optimisation okay now?

    I uploaded a merge request for ARMv7A and AArch64 a while back. I'm just wondering if it's okay now. https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/104 To…

    J. Gareth Moreton
    0
  15. Attn: J. Gareth // 3.3.1 opt = slower // Fwd: Faster than popcnt

    not sure if this is of interest to you, but I see you do a lot on the optimizer.... While testing the attached, I found that one of the functions was notable slower when…

    Martin Frb, J. Gareth Moreton, Jonas Maebe
    12
  16. Unexpected range check error (64-bit only)

    Something like this: Int64 := Byte + Byte + (Signed integer type (8,16 or 32 bit) with value < 0) will always give a range check error on X86_64 platform (if range…

    Bart, Jonas Maebe
    7
  17. Assembler file option (-a)

    on Linux with FPC 3.2.2 the executable size of programs compiled with fpc -On -a (tried with n 2 or 4) is smaller than when the assembler files are deleted (-a omitted).…

    Marco Borsari, Christo Crause, Sven Barth
    4