· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.WIN32 —› Компилятор ассемблера для IA-64

. 1 . 2 . 3 . 4 . 5 . 6 . >>

Посл.отвђт Сообщенiе


Дата: Сен 15, 2004 17:27:57

Здравствуйте,

Заинтересовал асм для IA-64, но вот чем же компилить ?
Почитал по форумах и ничего внятного по теме не нашел. Вобщем помогите компилером :)

Спасибо


Дата: Сен 15, 2004 18:02:13

100% видел такой, не могу вспомнить где. помню только, что он опенсорсовый


Дата: Сен 15, 2004 18:21:52

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


Дата: Сен 15, 2004 18:27:23

Пожалуйста поидйте к ----

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

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

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

Gerard ( Жерар )
-----------------
( Не под дождём -- подождём )


Дата: Сен 15, 2004 18:43:00

gerard, правильнее говорить: "Желаю успехов в программировании." или "Желаю больших успехов в программировании."


Дата: Сен 15, 2004 18:52:50

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


Дата: Сен 15, 2004 18:53:42

Надеюсь fasm скоро дорастёт до 64 бит.


Дата: Сен 15, 2004 19:22:15

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


Дата: Сен 16, 2004 04:01:13

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


Дата: Сен 16, 2004 21:46:59

Гкхм... объясните плз различие между x86-64 и IA-64...

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


Дата: Сен 17, 2004 10:36:09

2sep

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


Дата: Сен 17, 2004 10:55:41

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


Дата: Сен 17, 2004 11:23:42

Ну да, без либов только такой идиотский вариант:

MB_OK = 0

.sdata
.align 8 
lpText:
    stringz    "blabla"
lpCaption: 
    stringz    "blabla"

.text
.proc  main
.global main
.align 32 
// input param: PLABEL_DESCRIPTOR*

main:
    alloc    loc2 = ar.pfs, 0, 4, 4, 0;; 
    mov      loc3 = b0

    add      out0 = r0,r0 //hWnd
    addl     out1 = @gprel(lpText),gp
    addl     out2 = @gprel(lpCaption),gp
    add      out3 = MB_OK, r0 //uType
    mov      loc1 = gp
    ld8      r15 = [loc0], 8;;
    ld8      gp = [loc0]
    mov      b6 = r15;;
    br.call.sptk.many b0 = b6;;
    mov gp = loc1 

    mov      ar.pfs  =  loc2               
    mov      b0 = loc3,0                   
    br.ret.sptk.many b0;;      
.endp        
//:)))


Дата: Сен 17, 2004 12:01:52 · Поправил: sep

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


Дата: Сен 17, 2004 12:04:45

блин, так какого... :))

. 1 . 2 . 3 . 4 . 5 . 6 . >>


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.081