Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 11/12/23 in all areas

  1. Anders Melander

    MAP2PDB - Profiling with VTune

    I have just released version 3.1.2 with the following changes since 3.0.1: map2pdb can now consume JEDI jdbg-files. A rare overflow bug in the MSF writer has been fixed. The map parser can now handle the slightly different files produced by beta versions of Delphi. The big change here is the ability to create pdb-files from jdbg-files. You can thank Stefan for being so annoying that I finally caved in and implemented it to get him to shut up about it. This means that it is now possible to profile Delphi's run-time packages by converting the jdbg-files bundled with Delphi and binding the produced pdb-files to the bpl-files. It's as easy as map2pdb -bind:rtl290.bpl rtl290.jdbg Because of a bug in the JEDI tool Embarcadero uses to convert from map to jdbg, some symbol names produced from Embarcadero's jdbg-files may look a bit strange. It's a minor issue that has no impact on the functionality and there's nothing I can do about it since the original map files aren't available. Get it while it's hot: https://bitbucket.org/anders_melander/map2pdb/downloads/ Here's an example from Stefan showing an application using the rtl290.bpl run-time package being profiled with VTune:
  2. CoeurdeLeon

    Code formatting in Delphi 12

    Delphi 11 stores the Formatter configuration files in C:\Users\?\AppData\Roaming\Embarcadero\BDS\22.0. I copied my Delph 11 formatter.config file to C:\Users\?\AppData\Roaming\Embarcadero\BDS\23.0. It worked.
  3. Steven Kamradt

    wuppdi Welcome Page for Delphi 11 Alexandria?

    It offers a different way to manage your projects over what Embarcadero has. For example, I have over a dozen versions of the same few projects, all are the same project names stored in separate version specific directories. With this plugin I can create branches in the favorites for each version and group like projects for the same version together. This makes opening a specific version very simple, unlike the default favorite "hearts" which are only sorted by most recently opened, so separate versions of the projects get shuffled and to find a specific one is time consuming.
  4. Steven Kamradt

    wuppdi Welcome Page for Delphi 11 Alexandria?

    The source for example welcome page plugins is available at https://github.com/Embarcadero/RADStudio12Demos/tree/main/Object Pascal/VCL/VCL WelcomePage or if you checked the samples checkbox in the installer.
  5. There are now packages for Delphi 12 in the repository. Be warned though: They compile and install into the IDE but I haven’t done any tests at all.
  6. I updated the KnownIdePackagesManager tool to support Delphi 12.
  7. David Heffernan

    Delphi 12 is available

    It's one of my goals to release a version 13 of my software, which is currently at 11.4. I'd be able to retire then!!
  8. I have just updated my dzDelphiPaths tool to support Delphi 12.
  9. I just released Delphi Tools Manager 1.0.3 which now supports Delphi 6 to 12.
  10. I have updated my Delphi IDE explorer expert to work with Delphi 12.
  11. I have just updated the Delphi Custom Container Pack sources to support Delphi 12. It now compiles and installs. I have not tested it extensively. (Blog post here)
  12. Dalija Prasnikar

    Do local variables have a cost?

    If Foo is reference counted type, then GetFoo will require hidden reference created to properly initialize reference counting, regardless of how DoSomethingWithFoo is declared. If it is declared as const that only means there will be no additional reference counting involved (_IntfCopy and _IntfClear) calls. Hidden reference is equivalent of the explicitly declared local variable. It is created when there is a need for holding a reference to something for calling _IntfCopy and _IntfClear methods. If there is already a reference (when passing parameter to some procedure where parameter is not declared as const) then there will be no hidden reference because _IntfCopy and _IntfClear can be called on that reference directly. Same principle applies not only for interface , but also for other reference counted types like strings and dynamic arrays, the only difference is in particular reference counting methods that will be called.
  13. Hard to tell, it depends on many things and the context around it. May be, again no way to tell. I suggest to prefer the readability always, when the efficiency is needed only then you have to test and benchmark different code/algorithms/approaches... , you can profile the code and make sure that there is wasted speed, or even better is to look at the generated assembly, but this is not everyone cup of tea.
  14. Anders Melander

    Delphi 12 is available

    No, but making a Delphi 12 preview available most likely would have solved it. These closed betas are a ridiculously out-of-date way of doing things.
  15. David Heffernan

    Delphi 12 is available

    All these marketing people trying to generate buzz around a name. How about fixing the bugs and making the product better? Then you can call it anything you like and it will sell.
  16. TurboMagic

    Delphi Code Coverage WIzard Plus V2.0 released

    This is the information that I added a few things in development branch of this tool lately. I updated the command line code coverage tool used and started to add the new parametrs it provides. I haven't yet added all and I don't think all make sense for this tool, but you might still want to try it out. I haven't tested those additions yet, as I don't fully understand yet how they must be used from that bit of documentation provided for them and now I have lack of time, but I still hope they're usefull as is. So if I get feedback on them (and I didn't completely missunderstand those) I might still get a new release together soon. Cheers TurboMagic
×