On 22 September 2016 at 12:26, Pete Batard <p...@akeo.ie> wrote:
> On 2016.09.22 12:14, Ard Biesheuvel wrote:
>> For X64 and AARCH64, the issue does not exist because the EBC spec
>> mandates that all function arguments are widened to the native word
>> size. So when executing on a 64-bit architecture, the EBC stack looks
>> differently from what you describe above, and maps seamlessly onto the
>> register assignment mandated by the respective calling conventions.
> Ah, I see that you're right, and that I was trying to solve an issue that
> shouldn't exist:
> From UEFI 2.6, paragraph 21.9.3:
> "32-bit integers are pushed as natural size (since they
> should be passed as 64-bit parameter values on 64-bit machines)."
> I must admit I was a bit curious as to why this problem wouldn't have been
> picked before.
> So that leaves only the issue you mentioned. But then I'm not too hopeful
> with the timeframe for Arm/EBC integration when you say "we need language
> spec and compiler updates before we can fully support this"...
> Do you know if work has been started on this? Or are we just going to
> consider that this is too troublesome a problem to fix?

We are debating this internally. Even on AArch64, there are numerous
issues with EBC drivers, even if the code itself executes fine (this
is mainly related to PCI drivers that don't bother to enable support
for 64-bit DMA since this is never needed on Intel platforms)

So while EBC is of high importance to many Linaro members, I am not
sure if that includes 32-bit ARM support.

edk2-devel mailing list

Reply via email to