π
<-
Chat plein-écran
[^]

Présentation PB: Project Builder avec compilateur C en ligne

:32ti73: :32ti73e: :32ti73e2: :32ti76f: :32ti80: :32ti81: :32ti82: :32ti85: :32ti86: :32ti82s: :32ti82sf: :32ti82sfn: :32ti83: :32ti83p: :32ti83pb: :32ti83pr: :32ti83pfr: :32ti83pse: :32ti84p: :32ti84pse: :32ti84ppse: :32ti84pfr: :32ti84pcse: :32ti83pfrusb: :32ti82p: :32ti82a: :32ti84pce: :32ti83pce:

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 17 Mar 2017, 20:15

Parsing/affichage ASM amélioré selon les conseils de Runer112 :

Image
Image
MyCalcs
: Help the community's calculator documentations by filling out your calculator info!
MyCalcs
: Aidez la communauté à documenter les calculatrices en donnant des infos sur votre calculatrice ![/url]
Inspired-Lua.org
: All about TI-Nspire Lua programming
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 74.4%
 
Posts: 14005
Images: 1138
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
Twitter: adriweb
GitHub: adriweb

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 18 Mar 2017, 20:21

Adriweb wrote:
Wistaro wrote:Je sais pas si c'est possible, mais pourrait-on pouvoir indiquer quelques chose dans la console pour faire du debuggage?
Du genre void print2Console( char* msg)
ou void printUInt2Console( uint8_t var, uint8_t size)
?

En fait c'est déjà faisable avec les fonctions de debug de la toolchain et sur le vrai CEmu.
Par exemple, ce code ira afficher la string dans la console de l'émulateur:
Code: Select all
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include <tice.h>

#undef NDEBUG
#include <assert.h>
#include <debug.h>

void main(void) {
    pgrm_CleanUp();

    dbg_sprintf(dbgout, "This is the start of a CEmu debugging test\n");

    while(!os_GetCSC());
    pgrm_CleanUp();
}

Cf. l'exemple plus complet ici pour gérer les breakpoint directement à partir du code en lui-même: https://github.com/CE-Programming/toolc ... src/main.c


Cependant, la version JS de CEmu, utilisée sur le PB donc, n'a pas l'air de gérer ça (si ca fait partie des choses de debugging, et logiquement oui, alors c'est normal, j'ai désactivé tout ça puisque ça sert globalement à rien tant qu'il n'y a pas de débuggeur dans le PB). Il faudrait que je vois si je peux activer uniquement cette feature de debugging en console...


C'est désormais intégré !

Image
Image
MyCalcs
: Help the community's calculator documentations by filling out your calculator info!
MyCalcs
: Aidez la communauté à documenter les calculatrices en donnant des infos sur votre calculatrice ![/url]
Inspired-Lua.org
: All about TI-Nspire Lua programming
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 74.4%
 
Posts: 14005
Images: 1138
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
Twitter: adriweb
GitHub: adriweb

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Wistaro » 19 Mar 2017, 19:28

Excellent, merci beaucoup! :)
Nouveau sur le site,
Anonymous
? Avant de poster sur le chat et sur le forum, n'oublie pas de . En cas de problème, tu peux m'envoyer un message, je réponds rapidement.

Liens utiles:

Image
Découvre mes programmes et mon site!
User avatar
WistaroSuper Modo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 86%
 
Posts: 3087
Images: 37
Joined: 25 Feb 2013, 16:21
Location: Toulouse
Gender: Male
Calculator(s):
Class: Ingénieur en électronique
YouTube: Wistaro
Twitter: Wistaro
GitHub: Wistaro

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 03 Apr 2017, 12:13

Une mini-intégration expérimentale de la compilation avec LLVM a été rapidement effectuée, hier soir :

Image

Ce sera bien sûr mieux dans le futur, mais pour le moment, pour tester rapidement, c'est déja pas mal :P
Image
MyCalcs
: Help the community's calculator documentations by filling out your calculator info!
MyCalcs
: Aidez la communauté à documenter les calculatrices en donnant des infos sur votre calculatrice ![/url]
Inspired-Lua.org
: All about TI-Nspire Lua programming
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 74.4%
 
Posts: 14005
Images: 1138
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
Twitter: adriweb
GitHub: adriweb

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 07 Apr 2017, 23:40

LLVM view updated, now diffing with ZDS (left, and llvm on the right)
Note that clang gets called with -Oz for now.
(Also, yes that means you can write some C++17 for you 84+CE, because why not...)

Image
Image
MyCalcs
: Help the community's calculator documentations by filling out your calculator info!
MyCalcs
: Aidez la communauté à documenter les calculatrices en donnant des infos sur votre calculatrice ![/url]
Inspired-Lua.org
: All about TI-Nspire Lua programming
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 74.4%
 
Posts: 14005
Images: 1138
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
Twitter: adriweb
GitHub: adriweb

Re: Présentation du Project Builder avec compilateur C en li

Unread postby TheMachine02 » 08 Apr 2017, 14:33

Joli :#top#: Et je suis content de constater que le code généré par llvm est bien plus optimisé :p
User avatar
TheMachine02Modo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 29.1%
 
Posts: 336
Images: 0
Joined: 16 Jan 2013, 18:27
Gender: Not specified
Calculator(s):
Class: Médecine

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 16 Apr 2017, 17:20

Il devrait bientôt y avoir une popup (modal) de configuration du projet :
Image

Je compte aussi implémenter le fait de pouvoir donner des arguments à clang (du genre "-W -Wall -Wextra -O2" etc.) quand on choisit la compilation expérimentale par LLVM)
Image
MyCalcs
: Help the community's calculator documentations by filling out your calculator info!
MyCalcs
: Aidez la communauté à documenter les calculatrices en donnant des infos sur votre calculatrice ![/url]
Inspired-Lua.org
: All about TI-Nspire Lua programming
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 74.4%
 
Posts: 14005
Images: 1138
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
Twitter: adriweb
GitHub: adriweb

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 22 Apr 2017, 17:42

(Je devrais certes essayer d'avancer sur cette fameuse configuration plus fine du projet et d'autres choses liées, mais je viens juste signaler que la version de LLVM proposée en test a été mise à jour. En fait, elle l'est globalement à chaque fois (le jour même, en gros) que jacobly la fait évoluer, mais histoire de vous notifier ici au moins une fois... ;) Entre autre, des stack frames plus grosses sont mieux gérées, tout comme les flottants)
Image
MyCalcs
: Help the community's calculator documentations by filling out your calculator info!
MyCalcs
: Aidez la communauté à documenter les calculatrices en donnant des infos sur votre calculatrice ![/url]
Inspired-Lua.org
: All about TI-Nspire Lua programming
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 74.4%
 
Posts: 14005
Images: 1138
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
Twitter: adriweb
GitHub: adriweb

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 28 May 2017, 23:16

Des améliorations ont été faites au
Project Builder
, pendant ce long weekend (et je remercie particulièrement jacobly pour le temps passé à débugger des trucs avec moi :P) :

  • "Refonte" (relativement mineure, mais pas non plus triviale) de l'architecture du backend eZ80_native pour mieux permettre l'utilisation de la toolchain upstream directement.
    Le PB utilise donc la dernière version de la toolchain et des libs, tout en gardant la compatibilité pour les anciens projets.
  • Début du support des fichiers .cpp/.hpp, qui peuvent pour l'instant se
    compiler
    uniquement, et bien sûr seulement avec LLVM (pas buildés avec le linker ZDS etc. pour le moment).
    Attention, pas de lib standard C++... Mais donc écrire des classes, templates etc. (bref la syntaxe C++) à la main sans utiliser des trucs de la STL, par exemple, ça fonctionne.
  • More generic and reliable dirty check
    (pour le lancement des build)
  • Fix ctags getter when refreshing after saving files
  • Fix modal line numbers and refresh
  • Possibilité d'afficher l'output de la compilation LLVM uniquement (au lieu d'uniquement un diff avec l'output ZDS)
  • Meilleurs tooltips bootstrap
  • Mise en place d'une protection contre la création de nouveaux fichiers d'implémentation (c/cpp/asm) qui ont le même nom que d'autres fichiers d'implem avec extension différente, ça créait des conflits sinon (exemple, création de test.asm si un test.c existait déjà)



(Ca va venir prochainement sur le repo github public)
Over the past few days, I've been able to work on some
Project Builder
upgrades (and I want to particularly thank jacobly for the time he spent with me debugging some things :P) :

  • "Refactor" (relatively minor, but not trivial either) of the eZ80_native backend architecture to better allow for a more direct usage of the upstream toolchain.
    The PB now uses the latest toolchain and libs versions, while keeping compatibility for/with the old and existing projects.
  • Initial support of .cpp/.hpp files, which may be
    compiled
    only right now, and of course only with LLVM (they're not built, there's no ZDS linker involved, at least for now).
    Warning, there's no C++ std lib support, but you way write classes, templates etc. (well, anything related to the C++ syntax itself), but without using the STL, for example.
  • More generic and reliable dirty check
    (for launching builds)
  • Fix ctags getter when refreshing after saving files
  • Fix modal line numbers and refresh
  • New feature to display the LLVM unfiltered output alone as well, instead of only having a ZDS+LLVM diff view.
  • Better bootstrap tooltips
  • Feature to disallow creating implementation files with the same "common name" (i.e. you can't create a test.asm file if a test.c existed, as this would conflict later on during the build)



(Will be available soon on the public github repo)
Image
MyCalcs
: Help the community's calculator documentations by filling out your calculator info!
MyCalcs
: Aidez la communauté à documenter les calculatrices en donnant des infos sur votre calculatrice ![/url]
Inspired-Lua.org
: All about TI-Nspire Lua programming
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 74.4%
 
Posts: 14005
Images: 1138
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
Twitter: adriweb
GitHub: adriweb

Re: Présentation du Project Builder avec compilateur C en li

Unread postby Adriweb » 02 Jun 2017, 01:01

Mais, mais, que-vois-je ?

Image

Hé oui, ça y est, le support de build C/C++ avec le backend LLVM-ez80 de jacobly a été intégré sur le Project Builder (en alpha) !
What's that? C++ you say? LLVM-based building and not just asm-viewing?

Image

That's right, C/C++ building support through jacobly's LLVM-ez80 backend is now available on TI-Planet's Project Builder (in alpha) !
Image
MyCalcs
: Help the community's calculator documentations by filling out your calculator info!
MyCalcs
: Aidez la communauté à documenter les calculatrices en donnant des infos sur votre calculatrice ![/url]
Inspired-Lua.org
: All about TI-Nspire Lua programming
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 74.4%
 
Posts: 14005
Images: 1138
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
Twitter: adriweb
GitHub: adriweb

PreviousNext

Return to News TI-z80 (TI-73, 76, 80, 81, 82, 83, 84, 85, 86)

Who is online

Users browsing this forum: No registered users and 18 guests

-
Search
-
Social
-
Featured topics
Concours Python 2022 : "Pykaster3D".
Viens traquer et attraper les terribles souris électriques dans une arène 3D fortifiée.
De formidables lots à gagner pour les meilleurs scores !
Comparaisons des meilleurs prix pour acheter sa calculatrice !
14€ remboursés par Casio sur l'achat de ta calculatrice Graph 35 d'ici le 30 Octobre 2022
Reprise de ton ancienne fx-92 Collège ou Graph 25/35/90 à 5€. Même non fonctionnelle ou ancien modèle. Etiquette de retour fournie, pas de frais de port à payer.
Programme d'aide à l'équipement des établissements rentrée 2022. Pour tout achat groupé ou recommandation exclusive de calculatrices TI, 1 produit TI offert pour chaque tranche de 30 élèves concernés !
Programme d'aide à l'équipement des établissements rentrée 2022. Pour tout achat groupé ou recommandation même non exclusive de calculatrices Casio, des produits offerts pour chaque classe concernée !
12345678
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
435 utilisateurs:
>409 invités
>20 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)

-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)