Am Mittwoch, dem 05.07.2023 um 10:05 +0200 schrieb Rafał Pietrak: > Hi, > > W dniu 5.07.2023 o 09:29, Martin Uecker pisze: > > Am Mittwoch, dem 05.07.2023 um 07:26 +0200 schrieb Rafał Pietrak: > [-------] > > > And if it's so ... there is no mention of how does it show up for > > > "simple user" of the GCC (instead of the use of that "machinery" > > > by > > > creators of particular GCC port). In other words: how the sources > > > should > > > look like for the compiler to do "the thing"? > > > > > > > Not sure I understand the question. You would add a name space > > to an object as a qualifier and then the object would be allocated > > in a special (small) region of memory. Pointers known to point > > into that special region of memory (which is encoded into the > > type) would then be smaller. At least, this is my understanding > > of how it could work. > > Apparently you do understand my question. > > Then again ... apparently you are guessing the answer. Incidentally, > that would be my guess, too. And while such "syntax" is not really > desirable (since such attribution at every declaration of every > "short > pointer" variable would significantly obfuscate the sources and a > thing > like "#pragma" at the top of a file would do a better job), better > something then nothing.
If you want to mix pointers I think it would make the code clearer if the name space is explicit. But yes, you would need to add those annotations. But maybe one could also consider a pragma that sets a default name space mode for some region of code in the source. > Then again, should you happen to fall onto an > actual documentation of syntax to use this feature with, I'd > appreciate > you sharing it :) Sorry, I thought I shared this before: https://gcc.gnu.org/onlinedocs/gcc/Named-Address-Spaces.html The draft specification mentioned there can be found herE: https://www.open-std.org/jtc1/sc22/wg14/www/docs/n1275.pdf Martin