FREEFORM makes the compiler compile the source in free-form format while NOFREEFORM directs to compile in a fixed-form format. They are applied to the rest of the file in which they are mentioned but the directive is reverted if the compiler finds the opposite directive in the same file.
Example
!DIR$ FREEFORM
! This is free-form
temp = a; a = b; b = temp ! Swap a and b
write(6,*) 'Swapped a and b values are =', &
a,b ! Print a and b
!DIR$ NOFREEFORM
C---This-is-fixed-form