Компилятор ассемблера для IA-64

Тема в разделе "WASM.X64", создана пользователем sep, 15 сен 2004.

  1. sep

    sep New Member

    Публикаций:
    0
    Регистрация:
    1 июн 2004
    Сообщения:
    51
    Здравствуйте,



    Заинтересовал асм для IA-64, но вот чем же компилить ?

    Почитал по форумах и ничего внятного по теме не нашел. Вобщем помогите компилером :)



    Спасибо
     
  2. ssx

    ssx Member

    Публикаций:
    0
    Регистрация:
    19 авг 2003
    Сообщения:
    336
    100% видел такой, не могу вспомнить где. помню только, что он опенсорсовый
     
  3. sep

    sep New Member

    Публикаций:
    0
    Регистрация:
    1 июн 2004
    Сообщения:
    51
    Вот уже один нашел в Platform SDK 2003, называется Ias.Exe и лежит в папке Win64. Теперь вот думаю примеров накопать. Может и отдельный форум открыть по Win64 ?

    И опенсорсовый нашел на Intel developer :) В нем 2 примера есть (Max и Demo), компилятся Ias.Exe и нормально линкуются. Теперь может кто ссылки на примеры даст ?
     
  4. gerard

    gerard New Member

    Публикаций:
    0
    Регистрация:
    9 апр 2004
    Сообщения:
    40
    Адрес:
    France
    Пожалуйста поидйте к ----



    http://www.cpuid.com/K8/index.php



    Вы смог бы увидеть нескодько примеров...к концу этей страницы...



    Желаю хорошых успехов программирования...



    Gerard ( Жерар )

    -----------------

    ( Не под дождём -- подождём )
     
  5. Four-F

    Four-F New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2002
    Сообщения:
    1.237
    gerard, правильнее говорить: "Желаю успехов в программировании." или "Желаю больших успехов в программировании."
     
  6. sep

    sep New Member

    Публикаций:
    0
    Регистрация:
    1 июн 2004
    Сообщения:
    51
    gerard

    Спасибо, но там raw code, а мне нужно с примером вызова WinAPI, даже MessageBox пойдет :)
     
  7. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    Надеюсь fasm скоро дорастёт до 64 бит.
     
  8. dragon

    dragon New Member

    Публикаций:
    0
    Регистрация:
    5 ноя 2002
    Сообщения:
    84
    Адрес:
    Питер
    gerard

    Там пример для x86-64 а не IA-64. Хотя в массы скоро активно пойдут именно x86-64 процессоры, а итаниумы это дохлый номер, при такой огромной цене производительность ниже, чем у тех же Xeon'ов и Opteron'ов, да ешё и несовместимость с большинством программ, кому они нужны такие?
     
  9. pas

    pas New Member

    Публикаций:
    0
    Регистрация:
    18 апр 2003
    Сообщения:
    330
    Адрес:
    Russia
    Asterix

    Привалов в интервью сказал, что он вроде если и будет выпускать FASM64, то он будет вроде как платным.Хотя можно наверно будет и самим поправить до 64, или хотя бы в виде макросов реализовать.
     
  10. Inked Wedge

    Inked Wedge New Member

    Публикаций:
    0
    Регистрация:
    15 авг 2004
    Сообщения:
    33
    Адрес:
    Ukraine
    Гкхм... объясните плз различие между x86-64 и IA-64...



    Неужели интелловцы будут продолжать эту утомительную эпопею с совместимостью?
     
  11. Valery

    Valery New Member

    Публикаций:
    0
    Регистрация:
    31 июл 2003
    Сообщения:
    75
    Адрес:
    Russia
    2sep



    Единственное что могу вам посоветовать - скомпилируйте отдельный .obj и передайте ему адрес MessageBox из Cшной проги. Я подозреваю что MS использует здесь не адрес а PLABEL_DESCRIPTOR, из которого вы должны получить сам адрес и валидное для вызываемой API значение gp. Ну если занудно - проделайте сами то же для ia64 что Hutch сделал для masm32. Сишные либы для win64 есть в sdk.
     
  12. sep

    sep New Member

    Публикаций:
    0
    Регистрация:
    1 июн 2004
    Сообщения:
    51
    Inked Wedge

    Из одинакового в этих архитектурах только разрядность :) IA-64 это уже RISC самый настоящий (128 целочисленных регистров, 128 регистров с плавающей запятой и т.д.), а у x86-64 (что и видно из названия) просто существующие регистры расширили до 64 бит и добавили еще 8 регистров.
     
  13. Valery

    Valery New Member

    Публикаций:
    0
    Регистрация:
    31 июл 2003
    Сообщения:
    75
    Адрес:
    Russia
    Ну да, без либов только такой идиотский вариант:




    Код (Text):
    1. MB_OK = 0
    2.  
    3. .sdata
    4. .align 8
    5. lpText:
    6.     stringz    "blabla"
    7. lpCaption:
    8.     stringz    "blabla"
    9.  
    10. .text
    11. .proc  main
    12. .global main
    13. .align 32
    14. // input param: PLABEL_DESCRIPTOR*
    15.  
    16. main:
    17.     alloc    loc2 = ar.pfs, 0, 4, 4, 0;;
    18.     mov      loc3 = b0
    19.  
    20.     add      out0 = r0,r0 //hWnd
    21.     addl     out1 = @gprel(lpText),gp
    22.     addl     out2 = @gprel(lpCaption),gp
    23.     add      out3 = MB_OK, r0 //uType
    24.     mov      loc1 = gp
    25.     ld8      r15 = [loc0], 8;;
    26.     ld8      gp = [loc0]
    27.     mov      b6 = r15;;
    28.     br.call.sptk.many b0 = b6;;
    29.     mov gp = loc1
    30.  
    31.     mov      ar.pfs  =  loc2              
    32.     mov      b0 = loc3,0                  
    33.     br.ret.sptk.many b0;;      
    34. .endp        
    35. //:)))
    36.  
     
  14. sep

    sep New Member

    Публикаций:
    0
    Регистрация:
    1 июн 2004
    Сообщения:
    51
    Valery

    А ассемблер IA-64 страшноват на первый взгляд... Наверное на человека не рассчитан
     
  15. Valery

    Valery New Member

    Публикаций:
    0
    Регистрация:
    31 июл 2003
    Сообщения:
    75
    Адрес:
    Russia
    блин, так какого... :))
     
  16. sep

    sep New Member

    Публикаций:
    0
    Регистрация:
    1 июн 2004
    Сообщения:
    51
    Valery

    Интел мне нравится и с асмом 64 я разбираюсь и дальше, просто мнение свое высказал на счет простоты
     
  17. Valery

    Valery New Member

    Публикаций:
    0
    Регистрация:
    31 июл 2003
    Сообщения:
    75
    Адрес:
    Russia
    да нет IAS скорее неудобный чем страшный:))



    а вообще мой совет - бросайте это дело. толку от итаниума немного.
     
  18. sep

    sep New Member

    Публикаций:
    0
    Регистрация:
    1 июн 2004
    Сообщения:
    51
    Valery

    Толку немного потому что дорого или почему-то еще ?

    Я так понял, что это чисто серверная платформа
     
  19. Valery

    Valery New Member

    Публикаций:
    0
    Регистрация:
    31 июл 2003
    Сообщения:
    75
    Адрес:
    Russia
    потому что никто не занимается этим
     
  20. sep

    sep New Member

    Публикаций:
    0
    Регистрация:
    1 июн 2004
    Сообщения:
    51
    Очень жаль... А как тогда дела обстоят с x86-64 ? Чем-то же занимаются все-таки