Mail Archives: djgpp/2001/02/20/09:56:17
Kai Dietrich <toepferei DOT dietrich AT t-online DOT de> wrote:
> There is an example how to realize MMX support with compiled
> languages: FreePascal. It had to extend the Pascal language, but IMO
> these extensions are not that worse.
Yes, for a language like Pascal that essentially has no accepted
standard in the first place --- and ANSI/ISO Pascal really is seen as
a joke, by most Pascal programmers --- you can easily modify and
extend the core of the language itself. But C is a language where the
ANSI/ISO C standard does play a rather important role in existing
compilers, and even more so for a multi-platform compiler suite like
GCC. It doesn't even support "quasi-standard"s from the PC industry,
like 'near', 'far' and 'huge', and for very good reasons, too.
[...]
> When MMX support is on, you aren't allowed to
> do floating point arithmetic.
Which means you're *not* just extending the language, you're also
restricting it in very fundamental ways.
> IMHO this is a good solution for implementing MMX, SSE, 3DNow!,
> AltiVec, ... Support to the C language. Is there a way to use MMX
> with DJGPP without using asm?
None that I would have heard of. And I'd be quite surprised to hear of
any. To outfit C with MMX/3DNow! suppport without tearing the very
language to pieces, the only way practicable would be preprocessor
macros hiding inline assembly chunks.
SSE and AltiVec could be implemented more straightforwardly, as they
don't effectively disable the FPU while they're in use, AFAIK.
--
Hans-Bernhard Broeker (broeker AT physik DOT rwth-aachen DOT de)
Even if all the snow were burnt, ashes would remain.
- Raw text -