This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
[WIP][RFC] split of i386.c
- From: Martin Liška <mliska at suse dot cz>
- To: Uros Bizjak <ubizjak at gmail dot com>, Jeff Law <law at redhat dot com>
- Cc: Eric Gallager <egall at gwmail dot gwu dot edu>, GCC Development <gcc at gcc dot gnu dot org>, Jan Hubička <honza dot hubicka at gmail dot com>, "H.J. Lu" <hjl dot tools at gmail dot com>, Jakub Jelinek <jakub at redhat dot com>
- Date: Mon, 18 Mar 2019 15:19:25 +0100
- Subject: [WIP][RFC] split of i386.c
- References: <b2f2be9b-a86c-6d8f-4053-bbd0ef8540d4@suse.cz> <CAMfHzOsh7gX8y7QRQJjwP-aGzch0VHM0UWqGqcko=N4zfu66JQ@mail.gmail.com> <28098c4f-99a6-1004-90d4-82fa2f7eaa9c@redhat.com> <CAFULd4YdrSv+hKTuLUVy5kT=RXnA=L1rnFySvRo+0gijLp9dBA@mail.gmail.com> <e1ec1b7b-851d-846e-c544-1f92fef0bd04@suse.cz>
Hi.
I'm sending first version of the split, which has following
statistics:
gcc/config.gcc | 5 +-
gcc/config/i386/i386-builtins.c | 2563 ++++++++++
gcc/config/i386/i386-builtins.h | 314 ++
gcc/config/i386/i386-expand.c | 19868 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
gcc/config/i386/i386-expand.h | 40 +
gcc/config/i386/i386-features.c | 2854 +++++++++++
gcc/config/i386/i386-features.h | 179 +
gcc/config/i386/i386-options.c | 3678 ++++++++++++++
gcc/config/i386/i386-options.h | 76 +
gcc/config/i386/i386-protos.h | 4 -
gcc/config/i386/i386.c | 62939 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------------------------------------------------------------------------------------------------------
gcc/config/i386/i386.h | 9 +
gcc/config/i386/t-i386 | 16 +
13 files changed, 46542 insertions(+), 46003 deletions(-)
The newly created files have following content:
- i386-builtins.c - builtin-in handling, __builtin_cpu_is and __builtin_cpu_supports, target pragma handling
- i386-expand.c - all scalar and vector expansion code
- i386-features.c - contains isolated target features - vzerotoupper, stv, cet, rpad, multi-versioning,
- i386-options.c - option related functions, target attribute handling
Now the i386.c file is down in size:
23038 gcc/config/i386/i386.c
Question is whether I should continue or not? Remaining content of the file is made of
various costing functions, print_reg*, various target hooks, coff, ms_abi, retpolines,
output-functions, etc. I don't see any further split point which should define a new
file.
Patch: https://drive.google.com/file/d/1SiNcR35DHMNBumyg5ltbOozEJ5Q0ajKn/view?usp=sharing
Thoughts?
Thanks,
Martin