Třeba JavaScript (Wasm) to umí přes intrinsics :-) : https://emscripten.org/docs/porting/simd.html
Jinak se spoléhá asi na kompilátor, že už je dostatečně dobrý a zbytek se volá přes nativní knihovny, kde to C kompilátory docela dobře podporují. Microsoft Visual C myslím od assembleru upustil pro x86-64 úplně - částečně asi proto, že jejich implementace nebyla dostatečně flexibilní (v porovnání s register placeholders u GCC či Clang), částečně je intrinsics dostatečné a v porovnání s původní MS Visual C implementací flexibilnější. Původní Turbo Pascal byl na tom v tomto dost podobně - tam to ještě mělo větší smysl, bo kompilátor samotný si s optimalizacema příliš nelámal hlavu.
To snad nikdy nebyla součást jazyka (snad až na některé Forthy), ale konkrétních implementací, ne?
Ono to je dnes občas náročnější aby ten kód fungoval v kontextu zbytku aplikace.
A všude to nezmizelo, v sbcl (common lisp) je pořád možnost jak implementovat funkce (volně řečeno) v assembleru - např používat SSE než bylo oficiálně, tak psát a volat samostatný kód v assembleru - ale je kolem toho víc režie.
To je pravda. Assembler je zminen v ISO C jako doplnek, ktery se nemusi implementovat a taky v C++ norme (opet jako optional rozsireni). Jinak asi ne...
To ma dusledky. Pokud nejaky jazyk primo nepodporuje asm ani intrinsics, tak (IMHO samozrejme) nikdy nemuze plnohodnotne nahradit cecko. To se tyka napriklad Go, ktere je sice ve sve nice dobrym jazykem (pouzivame ho denodenne), ale C nenahradi (i jdyz tady je vic duvodu].
Rust to má jako součást core knihovny.
https://doc.rust-lang.org/core/arch/macro.asm.html
https://doc.rust-lang.org/reference/inline-assembly.html