Project

General

Profile

Developer Request #5079

Средства обновления переменных модуля

Added by Mikhail Chupilko almost 6 years ago. Updated almost 6 years ago.

Status:
Closed
Priority:
Normal
Target version:
Start date:
07/15/2014
Due date:
% Done:

0%

Estimated time:
Published in build:

Description

Если у меня в модуль добавлена переменная типа "register", а потом она встречается в коде в качестве "output", необходимо обновить ее определение в модуле. Предполагаю делать это заменой типа в определении в модуле на "output", хотя правильнее было бы делать объединение типов. Средств ни для обновления, ни для объединения типов сейчас нет, а было бы желательно их иметь.

History

#1

Updated by Alexander Kamkin almost 6 years ago

  • Subject changed from Средства обновления переменных модуля to [cfg] Средства обновления переменных модуля
  • Target version set to 0.1

Не забывайте указывать тэг и номер версии.

#2

Updated by Alexander Kamkin almost 6 years ago

Обновлять типы переменных - не задача CFG.

#3

Updated by Alexander Kamkin almost 6 years ago

  • Project changed from Retrascope to Verilog Translator
  • Subject changed from [cfg] Средства обновления переменных модуля to Средства обновления переменных модуля
  • Assignee changed from Sergey Smolov to Mikhail Chupilko
  • Target version changed from 0.1 to 0.1

Реализована следующая схема. У каждой декларации есть множество тезок - деклараций с тем же именем. Добавлять декларацию в CFG нужно, если выполнено одно из следующих условий:

  1. у декларации нет тезок;
  2. у декларации есть тезки, но декларация имеет тип OUTPUT или INOUT.
final Set<Declaration> namesakes = declaration.getNamesakes();

if (namesakes.isEmpty() || declaration.isOutput() || declaration.isInout()) {
  cfg.addVariable(createVariable(declaration));
}
#4

Updated by Alexander Kamkin almost 6 years ago

  • Status changed from New to Resolved
  • Assignee changed from Mikhail Chupilko to Alexander Kamkin
#5

Updated by Alexander Kamkin almost 6 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF