Is there an Intel RDTSC equivalent clock counter on Due SAM3X8E microcontroller?

There is a "delayMicroseconds()" function that works.

This little sketch delays pin flipping by 500000μs=0.5s several times:

void setup() {
  pinMode(7,OUTPUT);
  digitalWrite(7,HIGH);
  delayMicroseconds(500000);
  digitalWrite(7,LOW);
  delayMicroseconds(500000);
  digitalWrite(7,HIGH);
  delayMicroseconds(500000);
  digitalWrite(7,LOW);
  delayMicroseconds(500000);
  digitalWrite(7,HIGH);
  delayMicroseconds(500000);
  digitalWrite(7,LOW);
  delayMicroseconds(500000);
  digitalWrite(7,HIGH);
  delayMicroseconds(500000);
  digitalWrite(7,LOW);
  delayMicroseconds(500000);
}

void loop() {}

Oscilloscope confirms that "delayMicroSceonds()" does the right thing:

After fixing a bug of myself it works also when inserted between "micros()" calls as in previous sketch:

...
  t0=micros();
  t1=micros();
  delayMicroseconds(100);
  t2=micros();
  t3=micros();
...

Results in this output:

2016
2017
2119
2120

Seems I need to understand in detail how "delayMicroseconds()" and "micros()" work to answer my original question (is sub microsecond precision time measurement possible with Due?).

From ".arduino15/packages/arduino/hardware/sam/1.6.4/cores/arduino/wiring.h":

/**
 * \brief Pauses the program for the amount of time (in microseconds) specified as parameter.
 *
 * \param dwUs the number of microseconds to pause (uint32_t)
 */
static inline void delayMicroseconds(uint32_t) __attribute__((always_inline, unused));
static inline void delayMicroseconds(uint32_t usec){
    /*
     * Based on Paul Stoffregen's implementation
     * for Teensy 3.0 (http://www.pjrc.com/)
     */
    if (usec == 0) return;
    uint32_t n = usec * (VARIANT_MCK / 3000000);
    asm volatile(
        "L_%=_delayMicroseconds:"       "\n\t"
        "subs   %0, #1"                 "\n\t"
        "bne    L_%=_delayMicroseconds" "\n"
        : "+r" (n) :
    );
}

Hermann.