Der neue Dienst "GitLab am KIT" ist unter gitlab.kit.edu erreichbar.

Skip to content
  • Matthias Braun's avatar
    Rework target initialization and query · 1ffc842f
    Matthias Braun authored
    - Moves machine triple handling code form cparser into libfirm
    - Create new APIs to set the target and query information about it
        - Move backend_params into the new target API
        - Backends initialize ir_target instead of backend_params now
    - Add new API to get information about the target platform:
        - Mangle a name for the target platform (and remove compilerlib
          mangling callback)
        - Can query size and alignment of basic C types for the platform
    - Move some constant target information into arch_isa_if_t
      (we move it to target_info_t later when we realize it needs to be
       dynamic)
    - Redo backend initialization. Examples:
    
    Simple case: Initialize for host:
    
        ir_init();
    
    Complex case: cross-compile to sparc with PIC enabled:
    
        ir_init_library();
        ir_target_set("sparc-leon-linux-gnu");
        ir_target_option("pic");
        ir_target_init();
    1ffc842f