Is there a quick/scalable/reliable way to get a list of the fields that changed before an update is made to a record? I know i get the bulk (maybe all even) in a before update trigger on the record, but I'm not sure if that would get all them?

[Oder of Execution](https://www.salesforce.com/us/developer/docs/apexcode/Content/apex_triggers_order_of_execution.htm)