macstl turns 0.1.3; Features 65,566 different Altivec constants
TweetFollow Us on Twitter

macstl turns 0.1.3; Features 65,566 different Altivec constants

Subject: [ANN] macstl turns 0.1.3 today with new CodeWarrior support, and
65536 distinct Altivec constants

Pixelglow Software is proud to announce that we've updated macstl to 0.1.3,
which now works with Metrowerks Codewarrior 9. The new version also
features 65,566 different generated Altivec constants, and all the standard
Altivec operators in a neat object-oriented package. We=92ve listened to my
users and wrote over 100 new pages of reference documentation on the
website and a comprehensive unit test regime.

macstl is a C++ source library designed to bring the Macintosh into the
world of modern generic programming. The cornerstone is a fast valarray
optimized for Altivec: it runs 3.9x - 18.2x faster than gcc 3.3 libstdc++
and 5.2x - 16.2x faster than Metrowerks MSL C++. Developers unfamiliar with
Altivec can write to a portable, intuitive and standard component, and just
flicking a single compiler switch will make it run fast on a G4 or G5, or
run correctly on other non-Altivec systems.

http://www.pixelglow.com/macstl/

The license is BSD-like, which means you can change, redistribute, resell,
chop up or torch the source code to your heart=92s content without fee.
However, if you want to compile into object code for more than 30 days, you
should register a single developer for $99 or a site for $499. Object code
is similarly free from royalties and additional fees, and you get priority
support and a share of subsequent fees for code and debug contributions.

Codewarrior Developers

macstl is particularly valuable for CodeWarrior developers, since the fast,
efficient Metrowerks compiler is hampered by a slow, basic valarray
implementation in its MSL library. On the other hand, macstl valarray is
10x faster on inline arithmetic than MSL C++, thanks to aggressive use of
the expression template technique. I=92m especially interested in tests on
this compiler.

Altivec Developers

Programmers who want to get down and dirty with direct Altivec programming
now get the full benefit of working with C++ classes, including intuitive
infix syntax for arithmetic operators, sensible function overloading and
most of the valarray functionality, like cshifting and summing within a
vector. An aggressive optimizer like gcc means the objects and temporaries
will live inside registers and not touch memory. And Holger Bettag=92s famou=
s
65536 + 30 generated constants are now in a convenient template function,
allowing neat tricks like compile-time arithmetic for constant selection.

C++ Aficionados

You can browse the internal references or download the code to look at some
portable, cutting edge tips and techniques. I intend that valarray should
compile successfully on non-OS X systems:
* Expression templates with a twist: curiously recursive inheritance to
share code and minimize object size, creates an open-ended type system. *
Template template parameters as functors to switch between scalar and
vector code.
* Limited typeof using SFINAE to synchronize Altivec classes to the
inbuilt types and operators.
* Templates that both share code and have different functionality without
up-front policy, partial specialization or virtual inheritance -- a sort of
internalized policy-based design.
* Partial specialization as a expression template pattern matching technique=
=2E
* Valarray calculation using STL iterators to allow algorithms to scale
gracefully.
* Versions of std algorithms further tuned for random access iterators:
indexing rather than incrementing yields aliasing improvements.

Changes

* Now builds with Metrowerks CodeWarrior 9
* Now builds with August 2003 gcc 3.3Updater.
* Added 65,566 generated Altivec constants, using optimal instruction
sequences without memory loads [HBe].
* Added all intrinsic Altivec operators.
* Added unit tests for operators and scalarizers against the builtin
types.
* Added doxygen comments to most public classes and some internal classes.
* Added cshift member to altivec class.
* Added pixel class.

* Now works correctly as #included system headers:added include guards,
fixed internal #lincludes.
* Simplified term use of template template functors, used explicit
enchunking of functors.
* Removed libstdc++ dependencies: added destroy_n algorithm and identity
functor, rewrote uninitialized_copy_n and copy_n, remapped type traits
system.

* Fixed terms including )) and (( not compiling.
* Fixed initial valarray fill not compiling if the type had a non-trivial
destructor.
* Fixed valarray of bool compiling incorrectly if sizeof (bool) !=3D 4.
* Fixed binder1st/2nd with differing argument types not compiling.
* Fixed operator- of some term iterators not compiling. Fixed incorrect
value for chunked sum of char.

Cheers,
Glen Low, Pixelglow Software
www.pixelglow.com

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Latest Forum Discussions

See All

Combo Quest (Games)
Combo Quest 1.0 Device: iOS Universal Category: Games Price: $.99, Version: 1.0 (iTunes) Description: Combo Quest is an epic, time tap role-playing adventure. In this unique masterpiece, you are a knight on a heroic quest to retrieve... | Read more »
Hero Emblems (Games)
Hero Emblems 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: ** 25% OFF for a limited time to celebrate the release ** ** Note for iPhone 6 user: If it doesn't run fullscreen on your device... | Read more »
Puzzle Blitz (Games)
Puzzle Blitz 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: Puzzle Blitz is a frantic puzzle solving race against the clock! Solve as many puzzles as you can, before time runs out! You have... | Read more »
Sky Patrol (Games)
Sky Patrol 1.0.1 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0.1 (iTunes) Description: 'Strategic Twist On The Classic Shooter Genre' - Indie Game Mag... | Read more »
The Princess Bride - The Official Game...
The Princess Bride - The Official Game 1.1 Device: iOS Universal Category: Games Price: $3.99, Version: 1.1 (iTunes) Description: An epic game based on the beloved classic movie? Inconceivable! Play the world of The Princess Bride... | Read more »
Frozen Synapse (Games)
Frozen Synapse 1.0 Device: iOS iPhone Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: Frozen Synapse is a multi-award-winning tactical game. (Full cross-play with desktop and tablet versions) 9/10 Edge 9/10 Eurogamer... | Read more »
Space Marshals (Games)
Space Marshals 1.0.1 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0.1 (iTunes) Description: ### IMPORTANT ### Please note that iPhone 4 is not supported. Space Marshals is a Sci-fi Wild West adventure taking place... | Read more »
Battle Slimes (Games)
Battle Slimes 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: BATTLE SLIMES is a fun local multiplayer game. Control speedy & bouncy slime blobs as you compete with friends and family.... | Read more »
Spectrum - 3D Avenue (Games)
Spectrum - 3D Avenue 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: "Spectrum is a pretty cool take on twitchy/reaction-based gameplay with enough complexity and style to stand out from the... | Read more »
Drop Wizard (Games)
Drop Wizard 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: Bring back the joy of arcade games! Drop Wizard is an action arcade game where you play as Teo, a wizard on a quest to save his... | Read more »

Price Scanner via MacPrices.net

Deal Alert! Mac Studio with M4 Max CPU on sal...
B&H Photo has the standard-configuration Mac Studio model with Apple’s M4 Max CPU in stock today and on sale for $300 off MSRP, now $1699 (10-Core CPU and 32GB RAM/512GB SSD). B&H also... Read more

Jobs Board

All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.