J'ai remarqué pour la première fois en 2009 que GCC (au moins sur mes projets et sur mes machines) a tendance à générer un code sensiblement plus rapide si j'optimise pour la taille ( -Os) au lieu de la vitesse ( -O2ou -O3), et je me demande depuis pourquoi. J'ai …
J'ai une liste arbitraire d'assemblys .NET. Je dois vérifier par programme si chaque DLL a été créée pour x86 (par opposition à x64 ou à n'importe quel processeur). Est-ce possible?
J'ai lu div et mulles opérations d'assemblage, et j'ai décidé de les voir en action en écrivant un programme simple en C: Fichier division.c #include <stdlib.h> #include <stdio.h> int main() { size_t i = 9; size_t j = i / 5; printf("%zu\n",j); return 0; } Et puis générer du code …
Contexte: En optimisant du code Pascal avec un langage d'assemblage intégré, j'ai remarqué une MOVinstruction inutile et je l'ai supprimée. À ma grande surprise, la suppression des instructions inutiles a entraîné un ralentissement de mon programme . J'ai trouvé que l' ajout d' MOVinstructions arbitraires et inutiles augmentait encore les …
Les liens suivants expliquent les conventions d'appel système x86-32 pour UNIX (saveur BSD) et Linux: http://www.int80h.org/bsdasm/#system-calls http://www.freebsd.org/doc/en/books/developers-handbook/x86-system-calls.html Mais quelles sont les conventions d'appel système x86-64 sous UNIX et Linux?
Je crois avoir trouvé un bogue dans GCC lors de l'implémentation du PCG PRNG d'O'Neill. ( Code initial sur Godbolt's Compiler Explorer ) Après la multiplication oldstatepar MULTIPLIER, (résultat stocké dans rdi), GCC n'ajoute pas ce résultat à INCREMENT, movabs'ing INCREMENTà rdx à la place, qui est ensuite utilisé comme …
Je veux déterminer si un assembly natif est conforme en tant que x64 ou x86 à partir d'une application de code managé ( C # ). Je pense que cela doit être quelque part dans l'en-tête PE car le chargeur du système d'exploitation doit connaître ces informations, mais je ne …
Rust a des entiers de 128 bits, ceux-ci sont indiqués avec le type de données i128(et u128pour les entiers non signés): let a: i128 = 170141183460469231731687303715884105727; Comment Rust fait fonctionner ces i128valeurs sur un système 64 bits; par exemple, comment fait-il de l'arithmétique sur ces derniers? Puisque, pour autant que …
Dans la visite x86-64 des manuels Intel , j'ai lu Le fait le plus surprenant est peut-être qu'une instruction telle que met MOV EAX, EBXautomatiquement à zéro les 32 bits supérieurs du RAXregistre. La documentation Intel (3.4.1.1 Registres à usage général en mode 64 bits en architecture de base manuelle) …
J'ai un petit dilemme sur la façon de configurer mes builds de studio visuel pour le multi-ciblage. Contexte: c # .NET v2.0 avec p / invocation dans des DLL tierces 32 bits, SQL compact v3.5 SP1, avec un projet d'installation. À l'heure actuelle, la cible de la plate-forme est définie …
AMD a une spécification ABI qui décrit la convention d'appel à utiliser sur x86-64. Tous les systèmes d'exploitation le suivent, à l'exception de Windows qui a sa propre convention d'appel x86-64. Pourquoi? Quelqu'un connaît-il les raisons techniques, historiques ou politiques de cette différence, ou est-ce purement une question de syndrome …
Dans l'état actuel des choses, cette question ne convient pas à notre format de questions-réponses. Nous nous attendons à ce que les réponses soient étayées par des faits, des références ou une expertise, mais cette question suscitera probablement un débat, des arguments, un sondage ou une discussion approfondie. Si vous …
J'essaie d'installer un service Windows à l'aide d'InstallUtil.exe et j'obtiens le message d'erreur System.BadImageFormatException: impossible de charger le fichier ou l'assembly ' {xxx.exe}' ou l'une de ses dépendances. Une tentative a été faite pour charger un programme avec un format incorrect. Ce qui donne? EDIT: (Pas par OP) Message complet …
Je fais un travail critique de performance en C ++, et nous utilisons actuellement des calculs entiers pour les problèmes qui sont intrinsèquement en virgule flottante parce que "c'est plus rapide". Cela cause beaucoup de problèmes ennuyeux et ajoute beaucoup de code ennuyeux. Maintenant, je me souviens avoir lu comment …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.