Biorąc pod uwagę, że jestem kodowania w C++, jeśli to możliwe, chciałbym użyć intrinsics-podobnego rozwiązania czytać użytecznych informacji o sprzęcie, moje obawy/rozważania są:Intrinsics for CPUID like information?
- Nie wiem montaż cóż, będzie to znaczna inwestycja tylko po to, by zdobyć tego rodzaju informacje (choć wygląda na to, że CPU to tylko przerzucanie wartości i czytanie rejestrów).
- istnieje co najmniej 2 popularne składnie dla asm (Intel i AT & T) , więc jest rozdrobniony
- co dziwne Intrinsics są bardziej popularne i obsługiwane niż kod ASM w dzisiejszych czasach
- Nie wszystkie kompilatory, które są teraz w moim radarem, obsługują wbudowany asm, 64-bitowy MSVC to jeden; Obawiam się, że znajdę inne podobne wady, kopiąc więcej w zestawy funkcji różnych kompilatorów, których muszę użyć.
- biorąc pod uwagę trand Myślę, że jest bardziej produktywne dla mnie, aby postawić na Intrinsics, powinno być również o wiele łatwiejsze niż jakikolwiek kod asm.
I ostatnie pytanie, na które muszę odpowiedzieć, brzmi: jak zrobić coś podobnego z wewnętrznym? Ponieważ nie znalazłem niczego innego niż opcodes CPUID, aby uzyskać tego rodzaju informacje w ogóle.
Clang posiada zintegrowany asembler, a jego wsparcie dla zespołu Intel stylu jest rzadki w czasie. Nie może wygenerować prostego 'negate (neg)' w stylu Intela. – jww