Squash of 4 arm optimization committs

libagl: Enable CLZ instruction generation

Change-Id: I9d91f55b4bf06e9680f21d6c14c69ff68237c5ad

libagl: Reorder VFP optimized matrix multiply

Conflicts:
	opengl/libagl/matrix.cpp

libagl: Optimize matrix multiply using ARM VFP

We can use ARMv6 VFP to optimize matrix multiply manipulation in libagl.

Use angles as test benchmark program. Here are the reference results per
1000 times on TI OMAP3 600 MHz (Cortex A8) target:

[before]
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 1983
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 2075
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 1953
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 1922
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 1953
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 2075
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 1953
Avg = 1987.71 ns

[after]
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1739
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1892
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1739
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1770
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1739
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1892
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1739
Avg 1787.14 ns

Improvement: 10%

Conflicts:
	opengl/libagl/matrix.cpp

libagl: Optimize matrix multiply using ARM VFP

We can use ARMv6 VFP to optimize matrix multiply manipulation in libagl.

Use angles as test benchmark program. Here are the reference results per
1000 times on TI OMAP3 600 MHz (Cortex A8) target:

[before]
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 1983
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 2075
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 1953
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 1922
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 1953
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 2075
D/StopWatch( 3018): StopWatch? matrixf_t::multiply (us): 1953
Avg = 1987.71 ns

[after]
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1739
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1892
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1739
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1770
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1739
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1892
D/StopWatch( 3070): StopWatch? matrixf_t::multiply (us): 1739
Avg 1787.14 ns

Improvement: 10%

Conflicts:
	opengl/libagl/matrix.cpp

Change-Id: Ifffa0226b50eddaa9e03cdb773eef3b4c532a834
Merge "Squash of 4 arm optimization committs" into ics
Revert "Bluetooth: Fixed memory leak and file handles leak"

This reverts commit 68fa1bd10d39c7648d8f025c166107ded1272080.
Revert "wifi: send FORCE_STOPPED_STATE delayed message"

This reverts commit f8ddc0f856fa66106c2e5ec13f6a29c3f7b18167.
Revert "Implement additional keycodes"

This reverts commit 99f48300f7ac694ee0816847212640f20fdde57f.

Conflicts:

	core/java/android/view/KeyEvent.java

Change-Id: I39df7f854a16e823de47c756410c18ade0f0c6a1
Merge branch 'ics' of git://github.com/LiquidSmoothROMs/android_frameworks_base into ics
Fix a build error from sloppy revert

Change-Id: I93e083760abd476ae84b111ec00901133d3c556d