Back out the last "alias" commit (search for existing alias).

It breaks the alias handling completely as the search happens
way too late. So instead, just keep any possibly duplicate
name as it won't be in our way anyway.
This commit is contained in:
Joerg Wunsch 2022-02-10 21:26:05 +01:00
parent 38a3af37e2
commit 452f673f38
1 changed files with 0 additions and 12 deletions

View File

@ -1239,18 +1239,12 @@ part_parm :
mem_specs
{
AVRMEM * existing_mem;
AVRMEM_ALIAS * existing_alias;
existing_mem = avr_locate_mem_noalias(current_part, current_mem->desc);
if (existing_mem != NULL) {
lrmv_d(current_part->mem, existing_mem);
avr_free_mem(existing_mem);
}
existing_alias = avr_locate_memalias(current_part, current_mem->desc);
if (existing_alias != NULL) {
lrmv_d(current_part->mem_alias, existing_alias);
avr_free_memalias(existing_alias);
}
if (is_alias) {
avr_free_mem(current_mem); // alias mem has been already entered below
is_alias = false;
@ -1442,12 +1436,6 @@ mem_alias :
lrmv_d(current_part->mem_alias, alias);
avr_free_memalias(alias);
}
// NB: we do *not* check whether any non-alias region of the
// same name does already exist, as that one could be pointed to
// by an(other) alias as well. If we destroyed it, the alias
// pointer would get stale. In case someone defines the same
// name both as a regular memory as well as an alias, the
// regular one will always be found first by avr_locate_mem().
is_alias = true;
alias = avr_new_memalias();