Savez-vous quelle est la prise en charge des architectures VLIW (ou EPIC, comme Itanium) dans l'infrastructure du compilateur LLVM?Infrastructure du compilateur LLVM pour les architectures VLIW
Y a-t-il de bons documents/diapositives sur ce sujet?
Savez-vous quelle est la prise en charge des architectures VLIW (ou EPIC, comme Itanium) dans l'infrastructure du compilateur LLVM?Infrastructure du compilateur LLVM pour les architectures VLIW
Y a-t-il de bons documents/diapositives sur ce sujet?
Il n'y a pas de bon support VLIW dans le LLVM de base pour le moment./2010-11
Quelques messages utiles: http://old.nabble.com/VLIW-Scheduling-td857833.html
http://old.nabble.com/vliw-compatability-td27935919.html
MISE À JOUR/2012-01
LLVM ajouté (Semble after 3.0 release, par Anshuman Dasgupta) soutien initial d'un "VLIW packetizer" alias DFApacketizer à l'infrastructure de support du générateur de code indépendant de la cible: http://llvm.org/docs/CodeGenerator.html#vliw_packetizer
Pour générer des tables pour une cible VLIW, ajoutez Cible GenDFAPacketizer.inc en tant que cible du Makefile dans le répertoire cible. L'API exporté fournit trois fonctions:
Ces fonctions permettent une packetizer cible d'ajouter une instruction à un paquet existant et de vérifier si une instruction peut être ajouté à un paquet. Voir
llvm/CodeGen/DFAPacketizer.h
pour plus d'informations.
fil Machine Instruction Bundle in LLVM par Evan Cheng dans la liste de diffusion com.googlegroups.llvm-dev de 2 décembre 2011, décrivant le soutien LLVM VLIW (Bundle) de base. Ils sont planned pour être dans LLVM 3.1, et sont documented here.
De plus, dans la nouvelle infrastructure TableGen de 3,1 "pour prendre en charge le regroupement pour les architectures VLIW (Very Long Instruction Word)." est ajouté.
Il y a quelques compilateurs VLIW basés sur LLVM aujourd'hui; mais le support VLIW indépendant de la cible (générique) est au tout début de son long chemin.
MISE À JOUR 2012/12
Il y a quelques diapositives de Quic: http://llvm.org/devmtg/2012-11/Larin-Trick-Scheduling.pdf
Il y a des cibles VLIW énumérés dans Triple.h de LLVM: http://llvm.org/docs/doxygen/html/Triple_8h_source .html ... – osgx