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

 
 
> Непонятки с функцией memcpy
Harvester
сообщение Aug 13 2015, 08:23
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 338
Регистрация: 1-02-06
Из: Королев, М.О.
Пользователь №: 13 846



Добрый день.
Процессор ARM11, компилятор ADS 1.2
Имеется следующая функция:
Код
UCHAR RFC4357_KeyUnwrap(GOST28147_BCTX_PTR pX,
                        RFC4357_WRAPPED_KEY_PTR pWrappedKey,
                        PUCHAR pUnwrappingKey,
                        PUCHAR pUnwrappedKey) {
  UCHAR kd[32];
  UCHAR ke[32];

  /* calc diversified key */
  memcpy(kd, pUnwrappingKey, 32);
...
  /* decrypt key */
  memcpy(ke, pWrappedKey->KEY, 32);
...
}

Во время второго вызова memcpy() возникает исключение Misaligned. И действительно, перед вызовом функции R1 = 010CF0BA.
Из листинга видно, что при первом вызове вызывается функция __rt_memcpy, а при втором - __rt_memcpy_w.
Собственно, вопросы:
1. Из каких соображений компилятор в 1-м случае поставил функцию побайтного копирования, а во 2-м - пословного?
2. Как сказать компилятору, чтобы он во 2-м случае тоже использовал __rt_memcpy?


--------------------
-Да как так-то?/-Да как-то так/-Ну так-то да
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Harvester   Непонятки с функцией memcpy   Aug 13 2015, 08:23
- - aaarrr   Цитата(Harvester @ Aug 13 2015, 11:23) 1....   Aug 13 2015, 08:29
|- - Harvester   Цитата(aaarrr @ Aug 13 2015, 11:29) То ес...   Aug 13 2015, 08:37
- - aaarrr   КодUCHAR RFC4357_KeyUnwrap(GOST28147_BCTX_PTR ...   Aug 13 2015, 08:40
|- - Harvester   Цитата(aaarrr @ Aug 13 2015, 11:40) КодUC...   Aug 13 2015, 09:26
|- - aaarrr   Цитата(Harvester @ Aug 13 2015, 12:26) Не...   Aug 13 2015, 09:44
||- - Harvester   Цитата(aaarrr @ Aug 13 2015, 12:44) Не пр...   Aug 13 2015, 10:00
||- - aaarrr   Цитата(Harvester @ Aug 13 2015, 13:00) 1....   Aug 13 2015, 10:31
||- - Harvester   Цитата(aaarrr @ Aug 13 2015, 13:31) 1. Ес...   Aug 13 2015, 10:49
||- - aaarrr   Цитата(Harvester @ Aug 13 2015, 13:49) эт...   Aug 13 2015, 10:58
|- - scifi   Цитата(Harvester @ Aug 13 2015, 12:26) На...   Aug 13 2015, 10:08
|- - Harvester   Цитата(scifi @ Aug 13 2015, 13:08) Кстати...   Aug 13 2015, 10:30
- - Golikov A.   я бы __packed под typdef сразу запихал бы...   Aug 13 2015, 08:48
- - Golikov A.   Цитата1. Оставил __rt_memcpy_w а как вы написали? ...   Aug 13 2015, 10:24
- - scifi   Цитата(Harvester @ Aug 13 2015, 12:26) Но...   Aug 13 2015, 10:40
|- - Harvester   Цитата(scifi @ Aug 13 2015, 13:40) Ничего...   Aug 13 2015, 11:21
|- - aaarrr   Цитата(Harvester @ Aug 13 2015, 14:21) По...   Aug 13 2015, 11:30
- - Golikov A.   указатель, а не структуру предлагают ... но все же...   Aug 13 2015, 11:38
- - aaarrr   Цитата(Golikov A. @ Aug 13 2015, 14:38) А...   Aug 13 2015, 11:51


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


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


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