Перемещаемые символы в формате ELF (ассемблер)

Прежде чем писать какие-либо контрольные примеры для методов, вы должны инициализировать MockitoAnnotations.initMocks, например:

protected boolean mockInitialized = false;
@Before
public void setUp() {
   if (!mockInitialized) {
      MockitoAnnotations.initMocks(this);
      mockInitialized = true;
   }
}

Надеюсь, что это может решить вашу проблему. или предоставьте реальный код класса, для которого вы пытаетесь написать контрольные примеры.

10
задан BCS 6 December 2008 в 19:33
поделиться

3 ответа

ELF не знает об инструкциях по сути. Это знает о конкретной кодировке смещений символа в рамках инструкций. В ассемблере необходимо было бы произвести две записи перемещения, каждого с соответствием [адрес, тип, символ] триплет для надлежащего исправления той части инструкции. Компоновщик не обязательно даже знал бы, что эти две записи указывают на ту же инструкцию.

Типы перемещения ELF абсолютно зависимы от ЦП (или, чтобы быть более точным, зависимым от ISA), таким образом, Вы свободны определить безотносительно перемещений Вам нужно для новой архитектуры.

Трудно быть более конкретным без деталей кодирования инструкции.

7
ответ дан 4 December 2019 в 02:52
поделиться

Я знаю разъем о ELF и только немного больше о соединении, но...

Я ожидал бы, что каждый операнд обрабатывается тот же способ, которым это было бы, если бы был только один.

OTOH мог бы проблема быть что формат для j изменяется в зависимости от того, где маркировки? Если так, я думаю, что Вы снижаетесь, поскольку компоновщики не достаточно умны, чтобы сделать такую вещь (система сборки ADA, IIRC мог бы быть более умным, чем большинство так, Вы могли бы посмотреть на него.)

0
ответ дан 4 December 2019 в 02:52
поделиться

Я ожидал бы одну запись на адрес для каждой инструкции что перемещение потребностей.

Objdump смог отображать таблицу перемещения исполняемого или объектного файла, но я не знаю флаги бесцеремонно.

Мое предложение состоит в том, чтобы попытаться вскопать x86 (или другой CISC) инструкция, которая делает что-то подобное тому, что Ваша клиентская дуга делает и видит, какие перемещения сгенерированы, когда Вы собираетесь/связываете его.

0
ответ дан 4 December 2019 в 02:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: