[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Tinycc-devel] Generating better i386 code
From: |
Robert Clausecker |
Subject: |
Re: [Tinycc-devel] Generating better i386 code |
Date: |
Thu, 26 Sep 2013 08:25:46 +0200 |
Looks like a nice patch. I have some issues though.
> * 4- & 8-byte structs copy as int/long long (all targets);
> * passing structs <= 8 bytes will be treated as int/long long;
> * returning structs <= 8 bytes is done via (edx)eax (PE only);
> * added ebx to the register list (increasing prolog by one, to save
> it)
These changes look like they might change the ABI of tcc. Did you check
them for ABI compatibility? It would be great if it would still be
possible to use code generated by tcc together with code generated by
other, ABI conforming compilers.
> * simplify the float (not) equal test (remove cmp/xor, use jpo/jpe);
Does this change correctly handle NaNs? The following code must print 0
when executed:
#include <stdio.h>
#include <math.h>
int main() {
double x = NAN;
printf("%d\n",x == x);
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Tinycc-devel] Generating better i386 code,
Robert Clausecker <=