Closed Bug 1265366 Opened 9 years ago Closed 9 years ago

Option to turn on SSE2 autovectorization and SSE2-based floating-point math on 32-bit Windows

Categories

(Firefox Build System :: General, defect)

x86
Windows
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: hsivonen, Unassigned)

Details

In order to evaluate whether we should de-support non-SSE2 CPUs, it would be useful to have a way to have an option (that's easy to turn on for a tryserver build) to build for 32-bit Windows with SSE2 autovectorization and floating-point math enabled.
I assume there are specific MSVC compiler flags you'd want to use here? If so, sticking them in CFLAGS/CXXFLAGS should be sufficient for testing.
Will that override the default `-arch:IA32` in old-configure.in? One would need `-arch:SSE2` (the default) at minimum I think. Unless you meant hacking up that setting instead of a mozconfig override.
I don't have any experience with this, but looking at the docs, I did find there's a diagnostic `/Qpar-report:2` option which logs success/failure messages for autovectorization. Counting those would be an additional metric for the advantage of dropping `/arch:IA32`.
Replacing -arch:IA32 with -arch:SSE in old-configure.in and js/src/old-configure.in for a try build shouldn't be harder than adding an ac_add_options to the right mozconfigs. Why not do the former?
(In reply to Ted Mielczarek [:ted.mielczarek] from comment #1) > I assume there are specific MSVC compiler flags you'd want to use here? If > so, sticking them in CFLAGS/CXXFLAGS should be sufficient for testing. I filed the bug, because I didn't know what flags I wanted. Anyway, it seems that bug 1271794 is making this bug obsolete. Marking as WORKSFORME in anticipation of bug 1271794 landing.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WORKSFORME
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.