linking with libarm_cortexM3l_math.a ?

Success !!!

the software links, and runs the example. this means I have a lot of DSP goodies at my disposal, together with two DAC's and a lot of
ADC's.

Wheeeeeeeee !

sketch from /arduino-1.5.1/hardware/arduino/sam/system/CMSIS/CMSIS/DSP_Lib/Examples, mutilated by me

#define ARM_MATH_CM3
#include <arm_math.h>

#define TEST_LENGTH_SAMPLES 2048 


 
static float32_t testOutput[TEST_LENGTH_SAMPLES/2]; 
 
uint32_t M = 0;
 
/* ------------------------------------------------------------------ 
* Global variables for FFT Bin Example 
* ------------------------------------------------------------------- */ 
uint32_t fftSize = 1024; 
uint32_t ifftFlag = 0; 
uint32_t doBitReverse = 1; 
 
/* Reference index at which max energy of bin ocuurs */ 
uint32_t refIndex = 213, testIndex = 0; 
 
/* ----------------------------------------------------------------------
Test Input signal contains 10KHz signal + Uniformly distributed white noise
** ------------------------------------------------------------------- */

float32_t testInput_f32_10khz[2048] = 
{   
-0.865129623056441, 	0.000000000000000, 	-2.655020678073846, 	0.000000000000000, 	0.600664612949661, 	0.000000000000000, 	0.080378093886515, 	0.000000000000000, 	
... lots more numbers clipped away (see mentioned example dir, fft_bin example for full table ....
-2.899160484012034, 	0.000000000000000, 	2.563004262857762, 	0.000000000000000, 	3.078328403304206, 	0.000000000000000, 	0.105906778385130, 	0.000000000000000, 	
};

void setup() {
  Serial.begin(19200);
  Serial.println(" start program ");
}

void loop() {
       
     
       /** \example arm_fft_bin_example_f32.c 
  */  

	arm_status status; 
	arm_cfft_radix4_instance_f32 S; 
	float32_t maxValue; 
	 
	status = ARM_MATH_SUCCESS; 
	 
	/* Initialize the CFFT/CIFFT module */  
	status = arm_cfft_radix4_init_f32(&S, fftSize, ifftFlag, doBitReverse); 
	Serial.println("step 1"); 
	/* Process the data through the CFFT/CIFFT module */ 
	arm_cfft_radix4_f32(&S, testInput_f32_10khz); 
	Serial.println("step 2");  
	 
	/* Process the data through the Complex Magnitude Module for  
	calculating the magnitude at each bin */ 
	arm_cmplx_mag_f32(testInput_f32_10khz, testOutput, fftSize);  
	Serial.println("step 3");  
	/* Calculates maxValue and returns corresponding BIN value */ 
	arm_max_f32(testOutput, fftSize, &maxValue, &testIndex); 
	Serial.println("step 4");  
        Serial.println(testIndex,DEC);
        Serial.println(refIndex,DEC);       
        
    while(1);                             /* main function does not return */
    
}

output :

 start program 
step 1
step 2
step 3
step 4
213
213

to reproduce this, follow cmaglie's advice (with caution..)

and be sure the library mentioned (.../arduino-1.5.1/hardware/arduino/sam/system/CMSIS/CMSIS/Lib/GCC/libarm_cortexM3l_math.a) has been copied to directory .../arduino-1.5.1/hardware/arduino/sam/variants/arduino_due_x

for an idea what is in this library, have a look at
.../arduino-1.5.1/hardware/arduino/sam/system/CMSIS/CMSIS/Documentation/DSP_Lib/html/index.html
It even contains a PID controller ! and examples...

btw, additional examples about how to program various bits of the DUE can be found here (I'm not sure if this is about
the same library, or something that looks like it) : http://asf.atmel.com/docs/3.1.3/api.html.
click on a subject (be sure to select sam3x8e, or whatever matches this code most) and hope there is an example shown...