|
|
@ -311,11 +311,11 @@ SharedPtr<CodeSet> ElfReader::LoadInto(u32 vaddr) { |
|
|
CodeSet::Segment* codeset_segment; |
|
|
CodeSet::Segment* codeset_segment; |
|
|
u32 permission_flags = p->p_flags & (PF_R | PF_W | PF_X); |
|
|
u32 permission_flags = p->p_flags & (PF_R | PF_W | PF_X); |
|
|
if (permission_flags == (PF_R | PF_X)) { |
|
|
if (permission_flags == (PF_R | PF_X)) { |
|
|
codeset_segment = &codeset->code; |
|
|
|
|
|
|
|
|
codeset_segment = &codeset->CodeSegment(); |
|
|
} else if (permission_flags == (PF_R)) { |
|
|
} else if (permission_flags == (PF_R)) { |
|
|
codeset_segment = &codeset->rodata; |
|
|
|
|
|
|
|
|
codeset_segment = &codeset->RODataSegment(); |
|
|
} else if (permission_flags == (PF_R | PF_W)) { |
|
|
} else if (permission_flags == (PF_R | PF_W)) { |
|
|
codeset_segment = &codeset->data; |
|
|
|
|
|
|
|
|
codeset_segment = &codeset->DataSegment(); |
|
|
} else { |
|
|
} else { |
|
|
LOG_ERROR(Loader, "Unexpected ELF PT_LOAD segment id {} with flags {:X}", i, |
|
|
LOG_ERROR(Loader, "Unexpected ELF PT_LOAD segment id {} with flags {:X}", i, |
|
|
p->p_flags); |
|
|
p->p_flags); |
|
|
|