Opened 15 years ago

Closed 15 years ago

Last modified 15 years ago

#1428 closed Patches (fixed)

Patches to tools\build\v2\tools for Visual Studio 2008 support

Reported by: jrp@… Owned by:
Milestone: Boost 1.35.0 Component: Building Boost
Version: Boost Development Trunk Severity: Problem
Keywords: Cc:

Description

The attached patches to the boost build tools add recognition of msvc-9.0. The changes effectively reproduce the current msvc-8.0 behaviours/setttings.

So far, they are untested -- it is not clear to me what command I need to invoke from where to check these patches. Do I need to build a new bjam or can I just one of the python scripts?

There are a few enhancements that I will work on once these basics are establised.

For example: the ability to set floating point behaviour, whether to use sse/sse2, and enabling code analysis and container debugging, etc.

Attachments (1)

tools.zip (2.3 KB ) - added by anonymous 15 years ago.

Download all attachments as: .zip

Change History (4)

by anonymous, 15 years ago

Attachment: tools.zip added

comment:1 by John Pavel <jrp@…>, 15 years ago

The sse / processor amendments in the patches need further extension so that they can also be used for gcc 4.3.0 which now supports more processors, etc. See http://gcc.gnu.org/gcc-4.3/changes.html

Tuning for Intel Core 2 processors is available via -mtune=core2 and -march=core2. 
Tuning for AMD Geode processors is available via -mtune=geode and -march=geode. 
Code generation of block move (memcpy) and block set (memset) was rewritten. GCC can now pick the best algorithm (loop, unrolled loop, instruction with rep prefix or a library call) based on the size of the block being copied and the CPU being optimized for. A new option -minline-stringops-dynamically has been added. With this option string operations of unknown size are expanded such that small blocks are copied by in-line code, while for large blocks a library call is used. This results in faster code than -minline-all-stringops when the library implementation is capable of using cache hierarchy hints. The heuristic choosing the particular algorithm can be overwritten via -mstringop-strategy. Newly also memset of values different from 0 is inlined. 
GCC no longer places the cld instruction before string operations. Both i386 and x86-64 ABI documents mandate the direction flag to be clear at the entry of a function. It is now invalid to set the flag in asm statement without reseting it afterward. 
Support for SSSE3 built-in functions and code generation are available via -mssse3. 
Support for SSE4.1 built-in functions and code generation are available via -msse4.1. 
Support for SSE4.2 built-in functions and code generation are available via -msse4.2. 
Both SSE4.1 and SSE4.2 support can be enabled via -msse4. 
A new set of options -mpc32, -mpc64 and -mpc80 have been added to allow explicit control of x87 floating point precision

comment:2 by René Rivera, 15 years ago

Resolution: fixed
Status: newclosed

Mostly applied... Some notes for future patches... Please do not zip or otherwise package the patch. It makes it impossible to read it online. Please reduce the patch to minimal changes. Hence don't include TODO's or other prospective comments. And for BB additions to common features need to be discussed in the BB list first.

comment:3 by jrp@…, 15 years ago

Thanks. Needed to zip as otherwise patch was regarded as spam. Your other advice is noted.

Note: See TracTickets for help on using tickets.