реклама на сайте
подробности

 
 
85 страниц V  « < 44 45 46 47 48 > »   
Reply to this topicStart new topic
klen
сообщение Nov 20 2011, 20:53
Сообщение #676


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



жесть какаято .....
ld.exe: cannot find -lugin это вообще откудо!!??
разберусь в чем косяки выложу.

ну теперь до кучи для avr

http://klen.org//Files/DevTools/x86_32-kgp..._32-20111121.7z
lto не включать - его тут нету.

ребята... мож всетаки перейдем на 64 битные системы, а то они както умирают со всех сторон...
Go to the top of the page
 
+Quote Post
ARV
сообщение Nov 21 2011, 04:26
Сообщение #677


Профессионал
*****

Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581



Цитата(klen @ Nov 21 2011, 00:53) *
ребята... мож всетаки перейдем на 64 битные системы, а то они както умирают со всех сторон...

да мы бы с радостью, да только вот средства не позволяют.


--------------------
Я бы взял частями... но мне надо сразу.
Go to the top of the page
 
+Quote Post
adnega
сообщение Nov 21 2011, 05:20
Сообщение #678


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



На предыдущей версии собиралось без проблем.

C:\gcc\arm-kgp-eabi-x86_32_20111120\bin>arm-kgp-eabi-gcc.exe -mcpu=cortex-m3 -mthumb -g -O0 -c test.s -o test.o
test.s: Assembler messages:
test.s:103: Error: SVC is not permitted on this architecture

test.s:

@ 153 "c:/gcc/FreeRTOS/Source/portable/GCC/ARM_CM3/port.c" 1
ldr r0, =0xE000ED08
ldr r0, [r0]
ldr r0, [r0]
msr msp, r0
cpsie i
svc 0 <- 103 line
nop

Go to the top of the page
 
+Quote Post
klen
сообщение Nov 21 2011, 06:12
Сообщение #679


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



мне это все видется забавно.. а Вы говорите релизы..
такого говна повыкачивать я еще людям не предлагал!

просьба пока не пытатся скачивать архив с релизными версиями - там видимо хорошего ничего нет
до тех пор пока я на 32 битную хрюше не посмотрю как это все происходит.

но avr версию всетаки гляньте - я ее проверял - у меня простейший проект собрался.

нада сказать что собрать релизы с ходу как trunk у меня не получилось - куча косяков - в основном в конфигураиторах. приходилось руками помогать. хочу напомнить простую истину - релиз отлаженный для одной платфрмы не означает его релизность под другую. надо понимать что релизность в первую очередб относиться к кодогенератору RTL - тоесть к верхнему уровню, он собственно самое главное, а порты могут вообще в данный момент быть испорчены.

2_ARV это плохо что денег нет, у меня тоже их почемуто нет. чтото не так в консерватории - работаеш работаеш по 14 часов в сутки а их все нет и нет. sad.gif
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Nov 21 2011, 07:48
Сообщение #680


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(klen @ Nov 21 2011, 12:12) *
до тех пор пока я на 32 битную хрюше не посмотрю как это все происходит.

На всякий случай напомню, что в венде 32-битные программы можно легко и непринуждённо запускать (проверять) и на 64-битной системе rolleyes.gif


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
klen
сообщение Nov 25 2011, 07:31
Сообщение #681


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



2_adnega
косяк с SVC в релизной версии - старый известный в ассемблере бинутилса про который уже все забыли, но вы просили релиз! как вы понимаете сборка будет как говорят патсаны 'дэцел нерелизная'

потестил. косяки устранены для arm сборки под винду, на выходных выложу. с avr сборкой как? пробовал ктонибудь?
Go to the top of the page
 
+Quote Post
Ash_snz
сообщение Nov 25 2011, 09:03
Сообщение #682


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 12-05-11
Пользователь №: 64 958



2 Klen
Все мучаем свой элдешник. Если все не так просто с мипсами. Есть пример какого-нибудь скрипта линкера чтобы можно было секции по адресам и не так некузяво как у нас (т.е. с объектными файлами)?
Если найдется буду примного благодарен.
Go to the top of the page
 
+Quote Post
klen
сообщение Nov 26 2011, 14:44
Сообщение #683


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



поправленая ARM сборка с релизным компиллером 4.6.2 для 32 битной винды

http://klen.org/Files/DevTools/x86_32-kgp-..._32-20111126.7z

я его протестил на XP, проекты собираются отлаживаются и работают после зашивки.
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Nov 26 2011, 20:31
Сообщение #684


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



lto отвалилось, но это не особо важно... Спасибо. Без него работает.

Код
arm-kgp-eabi-gcc ../crt_sam7s.o ../cp15_asm.o ../bandfilters.o ../board.o ../sequen.o ../encoder.o ../hardware.o ../hd44780.o ../dis
play.o ../keyboard.o ../keymaps.o ../nvram.o ../spifuncs.o ../formats.o ../synthcalcs.o ../uc1601s_small.o ../uc1601s_font.o ../uc16
01s_font_alt.o ../uc1601s.o ../twi.o ../tc1.o -mcpu=arm7tdmi -flto -Os -nostartfiles -T../sam7x64_rom.ld -Wl,-Map=tc1_rom.map,--cref
,--no-warn-mismatch  -lm  -o tc1_rom.elf
lto1.exe: internal compiler error: compressed stream: data error
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
lto-wrapper: arm-kgp-eabi-gcc returned 1 exit status
c:/kgp_arm_eabi/bin/../lib/gcc/arm-kgp-eabi/4.6.2/../../../../arm-kgp-eabi/bin/ld.exe: lto-wrapper failed
collect2: ld returned 1 exit status
make.EXE: *** [tc1_rom.elf] Error 1
Go to the top of the page
 
+Quote Post
klen
сообщение Nov 26 2011, 23:15
Сообщение #685


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



да там в то время lto никто и гарантировал. он и щас то в вразработке.
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Nov 28 2011, 08:53
Сообщение #686


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Проверил, работает.
Причём по размеру кода даже немножко уделывает arm-kgp-eabi-gcc.exe 4.7.0 20110328:
text data bss
34236 32 38344 4.7.0
34124 32 38344 4.6.2

LTO нет ни там ни там (для кортексов), для arm7tdmi в 4.7.0 LTO работает, а в 4.6.2 - компилится (работу проверить не на чем).

А, и ещё openocd следующей версии, как обычно с несовместимым форматом конфигурации... Не, конечно понятно, что при появлении stm32f2x, пришлось его обособить от stm32f1xx, но можно же было оставить stm32x как алиас stm32f1x для совместимости!
Теперь у меня под виндой и под линуксом разные версииsm.gif

ЗЫ. Спасибо, klen! beer.gif


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
adnega
сообщение Nov 28 2011, 12:16
Сообщение #687


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Эхх...

test.s:493: Error: registers may not be the same -- `strexb r0,r0,[r1]'
test.s:517: Error: registers may not be the same -- `strexh r0,r0,[r1]'

test.s

Код
    .align    1
    .global    __STREXB
    .thumb
    .thumb_func
    .type    __STREXB, %function
__STREXB:
.LFB19:
    .loc 1 733 0
    .cfi_startproc
    @ args = 0, pretend = 0, frame = 0
    @ frame_needed = 0, uses_anonymous_args = 0
    @ link register save eliminated.
.LVL34:
    .loc 1 736 0
@ 736 "c:/gcc/lib/STM32F10x_StdPeriph_Lib_V3.5.0/Libraries/CMSIS/CM3/CoreSupport/core_cm3.c" 1
    strexb r0, r0, [r1]  <-- 493 line
@ 0 "" 2
.LVL35:
    .loc 1 738 0
    .thumb
    bx    lr
    .cfi_endproc
.LFE19:
    .size    __STREXB, .-__STREXB
    .align    1
    .global    __STREXH
    .thumb
    .thumb_func
    .type    __STREXH, %function
__STREXH:
.LFB20:
    .loc 1 750 0
    .cfi_startproc
    @ args = 0, pretend = 0, frame = 0
    @ frame_needed = 0, uses_anonymous_args = 0
    @ link register save eliminated.
.LVL36:
    .loc 1 753 0
@ 753 "c:/gcc/lib/STM32F10x_StdPeriph_Lib_V3.5.0/Libraries/CMSIS/CM3/CoreSupport/core_cm3.c" 1
    strexh r0, r0, [r1]  <-- 517 line


А это исходный текст
Код
/**
* @brief  STR Exclusive (8 bit)
*
* @param  value  value to store
* @param  *addr  address pointer
* @return        successful / failed
*
* Exclusive STR command for 8 bit values
*/
uint32_t __STREXB(uint8_t value, uint8_t *addr)
{
   uint32_t result=0;
  
   __ASM volatile ("strexb %0, %2, [%1]" : "=r" (result) : "r" (addr), "r" (value) );
   return(result);
}

/**
* @brief  STR Exclusive (16 bit)
*
* @param  value  value to store
* @param  *addr  address pointer
* @return        successful / failed
*
* Exclusive STR command for 16 bit values
*/
uint32_t __STREXH(uint16_t value, uint16_t *addr)
{
   uint32_t result=0;
  
   __ASM volatile ("strexh %0, %2, [%1]" : "=r" (result) : "r" (addr), "r" (value) );
   return(result);
}


A.3.8 LDREX and STREX
Load and Store Register Exclusive.
Syntax
LDREX{cond} Rt, [Rn {, #offset}]
STREX{cond} Rd, Rt, [Rn {, #offset}]
LDREXB{cond} Rt, [Rn]
STREXB{cond} Rd, Rt, [Rn]
LDREXH{cond} Rt, [Rn]
STREXH{cond} Rd, Rt, [Rn]
where
cond is an optional condition code; see “Conditional Execution” section on page 358.
Rd is the destination register for the returned status.
Rt is the register to load or store.
Rn is the register on which the memory address is based.
offset is an optional offset applied to the value in Rn. If offset is omitted, the address is the value in Rn.
Restrictions
In these instructions:
- Do not use PC.
- Do not use SP for Rd and Rt.
- For STREX, Rd must be different from both Rt and Rn.
- The value of offset must be a multiple of 4 in the range 0–1020.
Go to the top of the page
 
+Quote Post
klen
сообщение Nov 28 2011, 16:57
Сообщение #688


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(adnega @ Nov 28 2011, 16:16) *
Эхх...

test.s:493: Error: registers may not be the same -- `strexb r0,r0,[r1]'
test.s:517: Error: registers may not be the same -- `strexh r0,r0,[r1]'


1. как то мимо проехал, просто закаментил CMSIS две эти функции потому как не разбирался - кто врет: асм на наличие двух одинаковых регистров, или компилятор врет при их генерации. судя по доке для strexb и strexb это не воспрещаться но и не написано что можно (я решил ничего не предпринимать по поводу этого косяка). этот тонкий момент я оставил на потом. кто точно знает как работает ядро по этому вопросу сообщите.
2. моя рабочая гипотеза - врет ассемблер, если так то его можно быстренько подправить (если не будет подводных камней).

2_AHTOXA
на мой взгляд они все правильно делают - открылись новые обстаятельства - рефаторинг проекта, а то и редизайнинг пока не позно!! а не ''рекостылинг" ка это делают большенство обезьяноподобных.... нехрен грязь размазывать во времени и пространстве - сразу жопу вытер, помыл и забыл. я бы также сделал. проблем то никаких - имя скрипта поменял и все.
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Nov 28 2011, 17:34
Сообщение #689


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(klen @ Nov 28 2011, 22:57) *
на мой взгляд они все правильно делают - открылись новые обстаятельства - рефаторинг проекта, а то и редизайнинг пока не позно!! а не ''рекостылинг" ка это делают большенство обезьяноподобных....

Представляете, если бы авторы GCC вдруг решили поменять несколько ключей компилятора? Какой бы вой поднялся!
Мне кажется, в стан openocd проникли враги, и ведут там диверсионную деятельность.
Не, я вообще-то не против рефакторинга и даже редизайнинга, если это не мешает мне пользоваться продуктом. А у openocd я уж и не помню когда не было этого, там уже давно просто сплошной и непрерывный рефакторинг и редизайнинг! maniac.gif
Цитата(klen @ Nov 28 2011, 22:57) *
проблем то никаких - имя скрипта поменял и все.

У меня свой скрипт. Причём в каждом проекте свой. Так исторически сложилось. Теперь мне придётся все их править. Причём в данный момент на работе в винде у меня 0.6.0, а дома в линуксе - 0.4.0. Получается несовместимость по формату скриптов. Пока не придумал как выкручиваться...
А всего-то и надо было им - сделать старое наименование stm32x алиасом нового наименования stm32f1x. И потом хоть обрефакторились бы! laughing.gif


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
klen
сообщение Nov 28 2011, 20:17
Сообщение #690


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(AHTOXA @ Nov 28 2011, 21:34) *
Представляете, если бы авторы GCC вдруг решили поменять несколько ключей компилятора? Какой бы вой поднялся!
Мне кажется, в стан openocd проникли враги, и ведут там диверсионную деятельность.
Не, я вообще-то не против рефакторинга и даже редизайнинга, если это не мешает мне пользоваться продуктом. А у openocd я уж и не помню когда не было этого, там уже давно просто сплошной и непрерывный рефакторинг и редизайнинг! maniac.gif

У меня свой скрипт. Причём в каждом проекте свой. Так исторически сложилось. Теперь мне придётся все их править. Причём в данный момент на работе в винде у меня 0.6.0, а дома в линуксе - 0.4.0. Получается несовместимость по формату скриптов. Пока не придумал как выкручиваться...
А всего-то и надо было им - сделать старое наименование stm32x алиасом нового наименования stm32f1x. И потом хоть обрефакторились бы! laughing.gif


в что мешает на линуксе 0.6,0 запустит? религяи не позволяет?
у меня исторически сложилось что скрипт один...

а это что такое я спрашиваю?
stm32.cfg:
Код
deprecated cfg file
echo "DEPRECATED! use script 'target/stm32f1x.cfg' not 'target/stm32.cfg'"
source [find target/stm32f1x.cfg]
#

stm32f2xxx.cfg:
Код
# deprecated cfg file
echo "DEPRECATED! use script 'target/stm32f2x.cfg' not 'target/stm32f2xxx.cfg'"
source [find target/stm32f2x.cfg]

Go to the top of the page
 
+Quote Post

85 страниц V  « < 44 45 46 47 48 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 4th July 2025 - 12:29
Рейтинг@Mail.ru


Страница сгенерированна за 0.01491 секунд с 7
ELECTRONIX ©2004-2016